JavaScript Symbol,JavaScript是在20世纪90年代实现的,那时候,它只有6种基本的数据类型。JavaScript程序中的每个值,都是undefined、null、布尔值、数字、字符串或者一个对象。
现在,又有了一种新的类型,其形式就是最新引入的symbol数据类型。symbol类型和任何其他的数据类型都不同。一旦创建了,symbol一定是唯一的,这有助于很方便地命名那些随后不能被覆盖以及有可能被其他某些人的代码所毁坏的对象属性。
创建一个Symbol
创建一个Symbol的语法要用到Symbol()
函数:
var mySymbol = Symbol();
可以在括号之间可选地指定一个字符串:
var mySymbol = Symbol(′A description of mySymbol′);
该字符串直接充当一个说明,有助于进行调试。在用console.log()
写symbol或者用.toString()
将其转换为一个字符串时,这将是所看到的返回的说明(因为symbol自身没有字面值形式)。
以Symbol作为属性的键
由于Symbol具有唯一性,它是创建那种需要避免命名冲突的对象属性的好办法。
var myname = Symbol(′nickname of pet′);
myCat[myname] = ′Sylvester′;
字符串和整数并不是唯一的值,因此,以一个字符串作为属性名称会冒着这样一种风险,即相同的名称也可能会在程序中的其他地方出现。使用一个symbol则意味着,你可以对所提供的值更有信心。
说明:用方括号表示用作属性的键的symbol
就像数组元素一样,不能用点语法来访问作为属性的键的symbol。必须用方括号语法来访问它们,就像前面的示例中一样。
酷客网相关文章:
评论前必须登录!
注册