undefined, null, string, number, boolean, and symbol
.
symbol 是 ES6 新定义, 主要概念:
- symbol 表示独一无二的值。所以可以用来做对象的属性名。
- symbol 通过
Symbol()
函数生成。 - symbol 值不能与其他类型的值进行运算。
// Symbol() 函数的参数只是表示 Symbol 值的描述,因此即使参数相同,返回值也不相等。
let s1 = Symbol()
let s2 = Symbol()
s1 === s2 // false
参考:
http://es6.ruanyifeng.com/#docs/symbol
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Data_structures