Object.seal()与Object.freeze()区别

时间:2019-08-31 10:54:31 类型:JS/JQUERY
字号:    


方法的相同点:

  (1).ES5新增。

  (2).对象不可能扩展,也就是不能再添加新的属性或者方法。

  (3).对象已有属性不允许被删除。

  (4).对象属性特性不可以重新配置。

  方法不同点:

  Object.seal方法生成的密封对象,如果属性是可写的,那么可以修改属性值。

  Object.freeze方法生成的冻结对象,属性都是不可写的,也就是属性值无法更改。

  "use strict";
    let yteng = {
            webName:"南昌雅腾",
            url:"http://www.ncyteng.com",
            age:6
  };
    Object.freeze(yteng);
    yteng.age=5;
    console.log(yteng);


Cannot assign to read only property 'age' of object '#<Object>'