前言:属性读取可以使用 obj.xxx 或 obj[xxx]。这两者有什么区别吗。

1. obj.xxx

使用 obj.xxx 读取属性,会转化为对象的内部方法 [[SET]](obj, 'xxx', obj)。第一个参数是读取对象,第二个参数是对象的属性,第三个参数是 this 指向

2. obj[xxx]

使用 obj[xxx] 读取属性,会转化为对象的内部方法 [[SET]](obj, xxx is Symbol ? xxx : String(xxx))。第一个参数是对象,第二个参数是三目运算,判断属性是不是 symbol,是 symbol 直接读,不是 symbol 先转换为字符串。第三个参数是 this 指向。

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部