对象拓展

1.对象字面变量

2.对象解构,...运算符

3.name属性

4.特性方法(get、set定义是我方法获取)

let  descriptor = Object.getOwnPropertyDescriptor(obj,'num')
console.log(descriptor.get.name)
console.log(descriptor.set.name)

5.Symbol属性方法,返回description

6.?.运算符

支持:取值、删除属性、Symbol属性方法获取
暂不支持:赋值

7.静态方法

Object.is(value1,value2) 
解决全等号判断 -0===+0为true的问题
解决全等号判断 NaN===NaN为false的问题

Object.asign()
浅复制,合并可枚举的属性
Object.asign([1,2,3],[4,5]) ===>[4,5,3]

8.对象遍历

for...in:遍历对象自身、原型、可枚举的,不可遍历symbol、不可枚举的
Object.keys()  Object.values() Object.entries()
Object.getOwnPropertyNames(obj) 遍历对象自身、可枚举的、不可枚举的,不可遍历symbol、原型
Object.getOwnPropertySymbols(obj) 遍历symbol
Reflect.ownKeys(obj) 遍历对象自身、可枚举的、不可枚举的,symbol,不可遍历原型
posted @ 2021-08-11 14:46  卷叶小树  阅读(30)  评论(0编辑  收藏  举报