1.为何引入

为避免使用后他人方法时与其属性名产生冲突;新的原始数据类型Symbol,表示独一无二的值。

2.使用方法:

Symbol()
-有参数
const obj ={ }当参数为对象时
Symbol(obj)//Symbol([object Object]);
根据参数的数据类型返回不同的参数值
-无参数
let a = Symbol();
Symbol_数据
上面的代码可证明Symbol的值是独一无二的;
(1)Symbol的值可转化为字符串
let ss = Symbol(1)
ss.toString()或
String(ss)//'Symbol(1)'
(2)可转化为布尔值
let ss = Symbol('2')
Boolean(ss)//true

### 3.Symbol.prototype.description

创建 Symbol 的时候,可以添加一个描述。
不需要像上面那样转化为字符串或者布尔值
let ss = Symbol('1')
ss.desciption//'1'