【学习es6新增的数据类型 Symbol】
1、symble 的作用
symbol 是 es6 新增的一个基本的数据类型,定义唯一值的;一般用于给对象添加私有属性。
2、symble 的用法
<script>
let obj = {
a: 2,
b: 1,
c:3
}
obj[Symbol(1)] = 1
obj[Symbol(1)] = 2
console.log(obj)//{a: 2,b: 1,c:3,Symbol(1):1,Symbol(1):2}
// forin循环对象的时候,不能循环出来symbol类型的属性
// for(let key in obj){
// console.log(key)
// }
// console.log(obj[Symbol(1)])//undefined
</script>
3、如何获取 Symbol 添加的私有属性?
使用 :Object.getOwnPropertySymbols
console.log(Object.getOwnPropertySymbols(obj))
Object.getOwnPropertySymbols(obj).forEach(item=>{
console.log(obj[item])
})