Object.freeze()

Object.freeze() 方法可以冻结一个对象,冻结指的是不能向这个对象添加新的属性,不能修改其已有属性的值,不能删除已有属性,以及不能修改该对象已有属性的可枚举性、可配置性、可写性。也就是说,这个对象永远是不可变的。该方法返回被冻结的对象。

var obj = {
name:'abc',
age:14,
dsc:'this is aaa'
}


var obj_2 = obj;
obj_2.age = 16;
console.log(obj); //{name: "abc", age: 16, dsc: "this is aaa"}


var obj_3 = Object.freeze(obj);
obj_3.age = 20;
obj_3.data = 'sssssssss';
console.log(obj); //{name: "abc", age: 14, dsc: "this is aaa"}

使用了Object.freeze() 方法,不可以操作原来的obj。