- ES6 引入了一种新的原始数据类型 Symbol,表示独一无二的值
`其他 6 种数据类型 undefined、null、Boolean、String、Number、Object`
- Symbol 值通过 Symbol 函数生成
```js
const s = Symbol()
console.log(s, typeof s)
// Symbol函数前不能使用new命令
```
- Symbol 函数可以接受一个字符串作为参数,表示对 Symbol 实例的描述(主要是为了容易区分)
```js
const s1 = Symbol('foo')
const s2 = Symbol('foo')
console.log(s1 === s2) // false
```
- Symbol 值不能与其他类型的值进行运算,会报错
```js
const s1 = Symbol('foo')
console.log('test' + s1) // error
console.log(1 + s1) // error
``` |
|