Symbol 类型

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

总结

  1. Symbol 是一个基础数据类型,表示独一无二的值,可以用于消除魔术字符串。
  2. Symbol 的创建不用new操作符,直接用 Symbol(val)。
  3. Symbol 可以作对象属性,该属性是唯一的,Symbol 作为对象属性名时,不能用点运算符。
  4. 获取对象中的 Symbol 属性,可以用 Object.getOwnPropertySymbols 或 Reflect.ownKeys。
  5. 常用方法
    Symbol.for: 搜索 Symbol Symbol.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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值