文章目录
总结
- Symbol 是一个基础数据类型,表示独一无二的值,可以用于消除魔术字符串。
- Symbol 的创建不用new操作符,直接用 Symbol(val)。
- Symbol 可以作对象属性,该属性是唯一的,Symbol 作为对象属性名时,不能用点运算符。
- 获取对象中的 Symbol 属性,可以用 Object.getOwnPropertySymbols 或 Reflect.ownKeys。
- 常用方法
Symbol.for: 搜索 SymbolSymbol.keyFor: 获取 Symbol 的 key
独一无二的值
let id1 = Symbol('id');
let id2 = Symbol('id');
console.log(id1 == id2); //false
作用:消除魔术字符串(魔术字符串指的是,在代码之中多次出现、与代码形成强耦合的某一个具体的字符串或者数值。风格良好的代码,应该尽量消除魔术字符串,改由含义清晰的变量代替。)
var shapeType = {
triangle: 'Triangle'
};
function getArea(shape, options) {
var area = 0

Symbol是JavaScript的一个基础数据类型,代表独一无二的值,常用于消除魔术字符串。它不能通过new命令创建,而是直接使用Symbol(val)。Symbol作为对象属性时具有唯一性,但不能用点运算符访问。可以通过Object.getOwnPropertySymbols或Reflect.ownKeys获取对象的Symbol属性。Symbol.for和Symbol.keyFor方法分别用于登记和查找已登记的Symbol值。
最低0.47元/天 解锁文章
9797

被折叠的 条评论
为什么被折叠?



