ES6 第十二节 Symbol在对象中的作用
Posted elva3zora
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ES6 第十二节 Symbol在对象中的作用相关的知识,希望对你有一定的参考价值。
ES6 第十二节 Symbol在对象中的作用
第十二节 Symbol在对象中的作用
Symbol意思是全局标记。
声明Symbol
我们先来回顾一下我们的数据类型,在最后在看看Symbol如何声明,并进行一个数据类型的判断。
var a = new String;
var b = new Number;
var c = new Boolean;
var d = new Array;
var e = new Object;
var f= Symbol();
console.log(typeof(d)); //object
Symbol的打印
我们声明一个Symbol,然后控制台输出:
var g = Symbol(‘da0sy‘);
console.log(g);
console.log(g.toString());
没有toString的是红字,toString的是黑字。
Symbol在对象中的应用
看一下如何用Symbol构建对象的Key,并调用和赋值。
var da0sy = Symbol();
var obj={
[da0sy]:‘黛西‘
}
console.log(obj[da0sy]); //黛西
obj[da0sy] = ‘web‘;
console.log(obj[da0sy]); //web
Symbol对象元素的保护作用
在对象中有很多值,但是循环输出时,并不希望全部输出,那我们就可以使用Symbol进行保护。
没有进行保护的写法:
var obj={name:‘da0sy‘,skill:‘web‘,age:18};
for (let item in obj){
console.log(obj[item]);
}
现在我不想别人知道我的年龄,这时候我就可以使用Symbol来进行循环保护。
let obj={name:‘da0sy‘,skill:‘web‘};
let age=Symbol();
obj[age]=18;
for (let item in obj){
console.log(obj[item]);
}
以上是关于ES6 第十二节 Symbol在对象中的作用的主要内容,如果未能解决你的问题,请参考以下文章