ES6学习笔记9 Symbol用法

{
// 概念 提供独一无二的值 a=5 b=5 是不行的
let a1=Symbol()
let a2=Symbol()
console.log(a1===a2)
//a1===a2 false


let a3=Symbol.for('a')//a3 key值为a
let a4=Symbol.for('a')
console.log(a3===a4) //true
}

{
// 作用
let a=Symbol.for('abc')
let obj={
[a]:'123',
'abc':345,
'c':456
}
console.log(obj)

//这种方法是取不到symbol abc
for(let [index,val] of Object.entries(obj)){
console.log('let of',index,val)
}

Object.getOwnPropertySymbols(obj).forEach(function(item){
console.log(obj[item])
})

Reflect.ownKeys(obj).forEach(function(item){
console.log('ownkeys',item,obj[item])
})


}

猜你喜欢

转载自www.cnblogs.com/laohange/p/12812975.html