最初JS的6种数据类型:
null,undefined,boolean,number,string,object
注意:实际上,array和function都是属于object的子类
ES6中,新增了一种数据类型Symbol,现在共7种数据类型
判断:
typeof Symbol() === 'symbol'
特点:
Symbol('key') !== Symbol('key') //true
Symbol类型的对象永远不相等,即便创建它们的时候传入了相同的值,因此,可借助此特性解决属性名的冲突问题(比如适用于多人编码的时候),这也是该数据类型存在的主要用途,意为标记
例子:
var sym = Symbol('foo');
var obj = {[sym] : 1};
obj[sym] === 1 //true
参考链接:
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Symbol