1 第七种数据类型Symbol
ES6引入了一种新的原始数据类型Symbol,表示独一无二的值。它是JavaScript语言的第七种数据类型,前六种是:Undefined、Null、布尔值(Boolean)、字符串(String)、数值(Number)、对象(Object)。
let s = Symbol(); console.log(typeof s); //"symbol"
Symbol类型变量通过Symbol()方法来构建(不能使用new),另外该方法可以接受一个字符串类型的参数作为该Symbol的描述
let s1 = Symbol('tag');
let s2 = Symbol('tag');
s1 == s2; //false,参数仅仅作为描述,就算相同描述的两个Symbol也是不同的Symbol类型使用注意:
let s = Symbol();
"symbol:" + s; //报错,无法和字符串运算
s + 2; //报错,无法和字符串运算
s1.toString(); //"Symbol(tag)",Symbol显示转换为字符串类型是可以的
if(s){
... //可以转换为bool
}说了这么多,ES6中引入Symbol到底是用来干嘛呢?

