//ES6 引入js 第七种基本数据类型,除了原来的 Number,String,Object,Bool,Null,undefined,新加入了Symbol类型
let s = Symbol();
console.log(typeof s);//输出 symbol,小写的symbol 坑!
let s1 = Symbol('foo');//
console.log(typeof s1);//输出 symbol
console.log(s1);//输出 symbol(foo)
//创建枚举类型
const ColorEnum = {
Red:Symbol(),
Green:Symbol(),
Blue:Symbol()
}
function draw(color){
switch(color)
{
case ColorEnum.Red:console.log('drawing with color red');break;
case ColorEnum.Green:console.log('drawing with color green');break;
case ColorEnum.Blue:console.log('drawing with color blue');break;
default:console.log('not support!');break;
}
}
draw(ColorEnum.Green);// 多优雅的写法
Symbol.for('bar') == Symbol.for('bar');//true,Symbol.for 使用全局配置key,每次都会全局键检索
Symbol('bar') === Symbol('bar');//false, 每次生成一个
var s1 = Symbol.for("foo");
Symbol.keyFor(s1);//"foo",返回一个已登记的 Symbol 类型值的key
var s2 = Symbol("foo");
Symbol.keyFor(s2);// undefined
ECMAScript 6 —— 知识点(八) Symbol 类型
猜你喜欢
转载自blog.csdn.net/wuxinwudai/article/details/80831466
今日推荐
周排行