学堂 学堂 学堂公众号手机端

如何使用es6里面的symbol新数据类型

lewis 1年前 (2024-03-31) 阅读数 6 #技术


symbol是新增的数据类型,表示印记符号,是一个独一无二的值,常用于对象的属性不重复

let aq=Symbol(“qw”);
let user={
admin:“123”,
pass:“qwe”,
u:[{b:1,c:2}],
[aq]:“asq”
}


也可以用Object.defineproperty(object,aq,{value:“asq”})
然后通过forin遍历你会发现symbol类型看不见,因为要使用
console.log(Object.getOwnPropertyNames(user))//这个是用于遍历获取user的属性更详细一点请看下面


console.log(user)
admin: “123”
pass: “qwe”
sa: Symbol(hel)
u: [{…}]
Symbol(qw): “asq”
Symbol(kk): “heq”
proto: Object
可以看出它的原型是指向Object


console.log(Object.getOwnPropertySymbols(user))//这个是获取Symbol数据类型的方法
let a1=Symbol.for(“as”);
console.log(a1);
let a2=Symbol.for(“as”);//这个是获取symbol名字
console.log(a1===a2)这个是比较symbol名称里面的值即比较数据也比较类型



版权声明

本文仅代表作者观点,不代表博信信息网立场。

热门