es2015符号的值永远不会重复
es2015符号:符号是一种新的值类型的数据添加到es2015型,代表着一个价值不重复。
在Javascript引用类型和基本类型的一章中可以看到数据类型。
代码示例如下所示:
让斯瓦尔巴特群岛=符号();
console.log(typeof斯瓦尔巴特群岛)
上述代码的输出值是符号。
符号()函数可用于创建符号类型值。
特别是,您不能使用新的,否则它将是错误的,因为符号是一个值类型的数据,它是很好理解的。
符号()函数可以接受字符串作为参数,作为符号值的描述,或者作为键(键),代码实例如下所示:
设S1 =符号();
设S2 =符号();
该键的功能是便于区分不同符号类型的值。代码实例如下所示:
设S1 =符号();
设S2 =符号();
console.log(s1.tostring());
console.log(s2.tostring());
这两个符号值可以用键很容易地区分。
同一个键的两个符号值不同:
设S1 =符号();
设S2 =符号();
console.log(S1,S2);
上述两个符号值不相等。
符号值不能隐式转换为字符串类型,代码实例如下所示:
设s =符号();
/ /报错
` antzone $ {符号} `
/ /报错
antzone+符号
上面的代码试图在符号隐式转换字符串中出错。
但我们可以显式地将其转换为字符串类型,代码实例如下所示:
设s =符号();
console.log(s.tostring());
符号类型方法和属性:
方法列表如下:
方法
描述
symbol.for()
创建符号类型的值,但不要重复创建具有相同键值的相同符号类型的值。
symbol.keyfor()
获取对应符号值的键。
symbol.prototype.tostring()
返回当前符号对象的字符串表示形式。
属性列表如下所示:
方法
描述
symbol.iterator
一个内置的符号价值,作为一个对象的属性,指出了一个ergodicer接口。
symbol.match
symbol.prototype
symbol.species
symbol.toprimitive