为了账号安全,请及时绑定邮箱和手机立即绑定

对象,原型链中有设置了set,get方法的属性. 则对象中也会自动写入此属性

对象,原型链中有设置了set,get方法的属性. 则对象中也会自动写入此属性

森栏 2018-11-15 18:18:49
1: 一个对象的 原型链 中 如果设置了set,get方法的属性, 则该对象会自动写入此属性.2: 代码如下let test = {        a:1,b:2    }    Object.defineProperty(test,'a',{        set(){            return 'set'        },        get(){            return 'get'        }    })    let o = {};    o.__proto__ = test;3: 在控制台中查看 o4: 为什么o对象也有了a属性?
查看完整描述

1 回答

?
牧羊人nacy

TA贡献1862条经验 获得超7个赞

眼见不一定为实……

不信你Object.getOwnPropertyDescriptor(o, 'a')Object.getOwnPropertyDescriptor(test, 'a')分别执行试试。

这应该只是chrome的调试工具为了方便显示打造的效果,firefox下就不会出现这种情况。


查看完整回答
反对 回复 2018-12-27
  • 1 回答
  • 0 关注
  • 389 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信