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

es5中Object.seal()密封对象后,可以修改对象原型上的属性吗?

es5中Object.seal()密封对象后,可以修改对象原型上的属性吗?

噜噜哒 2018-11-17 19:19:39
mdn的解释是这样的翻译说的是不影响原型上继承的属性,但是__proto__属性的值不能修改,然后自己就亲自测试了一下,发现密封对象后原型可以删除和修改,然后就不理解这句话的表达是否准确。。。代码如下let obj_origin, obj_changed;        function Person() {            this.name = 'sheng';            this.age = '25';        }        Person.prototype = {            constructor: Person,            sing () {                alert('sing');            },            prototypeTarget:'prototypeTarget'        };        obj_origin = new Person();        obj_changed = Object.seal(obj_origin);        delete obj_changed.name;        delete obj_changed.__proto__.prototypeTarget;        console.log(obj_changed);原型上的prototypeTarget属性被删除了
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 741 浏览
慕课专栏
更多

添加回答

举报

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