我的网站开发技术经验总结 我的网站开发技术经验总结
首页

fangdown

我的网站开发技术经验总结
首页
  • 大前端

  • 基础

    • js

    • css

    • ES6

      • 说说对模块化的理解
      • 说说ES6中对象新增了哪些扩展
        • 是什么
        • 怎么用
          • 属性的简写
          • 属性名表达式
          • super关键字
          • 拓展运算符的应用
          • 属性的遍历
          • 新增的方法
        • FAQ
      • 说说ES6中函数新增了哪些扩展
      • ES6中数组的常用方法
      • 说说ES6中新增的Set、Map的区别
      • 说说ES6中Decorator的理解
      • 说说ES6中Generator的应用
      • 说说ES6中Promise的常用方法及原理
      • 说说ES6中Proxy的理解
      • 说说var、let、const之间的区别
  • 框架

  • 情商

  • 算法

  • 网络

  • 千锤百炼
  • 基础
  • ES6
fangdown
2021-08-18
目录

说说ES6中对象新增了哪些扩展

# 是什么

  • 属性的简写
  • 属性名表达式
  • super关键字
  • 拓展运算符的应用
  • 属性的遍历
  • 新增的方法

# 怎么用

# 属性的简写

const obj = {name:name}
// ===
const obj = {name}
function foo(){
  const x = 1
  const y = 2
  return {x, y}
}

# 属性名表达式

const key = 'testKey'
const obj = {
  name: 'fangdown',
  [key]: 'key'
}
obj[key] // key


# super关键字

const proto = {
  foo: 'hello'
}
const obj = {
  foo: 'world',
  find(){
    return super.foo
  }
}
Object.setPrototypeOf(obj, proto)
obj.find() // hello

# 拓展运算符的应用

解构赋值是最后一个参数

let {x, y, ...z} = {x:1, y: 2, a:3, b:4}
x // 1
y // 2
z // {a:3, b:4}

# 属性的遍历

  • for...in 遍历循环(包含原型链)
  • Object.keys(obj) 获得键值数组
  • Object.getOwnPropertyNames(obj) 获得自身属性的键名
  • Object.getOwnPropertySymbols(obj) 获得自身的symbol属性键名
  • Reflact.ownKeys(obj) 返回自身的所有键名

# 新增的方法

  • Object.is() 判断是否相等===
  • Object.assign() 合并对象
  • Object.keys(),Object.values(), Object.entries() 键名 键值 键名键值
  • Object.setPrototypeOf(), Object.getPrototypeOf() 设置原型对象,获取原型对象

# FAQ

#ES6
上次更新: 2021/12/19, 18:05:42
说说对模块化的理解
说说ES6中函数新增了哪些扩展

← 说说对模块化的理解 说说ES6中函数新增了哪些扩展→

最近更新
01
多分支修复撞车的问题
05-01
02
如何成为架构师
01-23
03
服务器部署全过程
11-23
更多文章>
Theme by Vdoing | Copyright © 2019-2026 fangdown | 粤ICP备19079809号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式