Object.freeze()
方法可以冻结一个对象,冻结指的是不能向这个对象添加新的属性,不能修改其已有属性的值,不能删除已有属性,以及不能修改该对象已有属性的可枚举性、可配置性、可写性。也就是说,这个对象永远是不可变的。该方法返回被冻结的对象。
01 | var obj = { |
02 | name: 'abc' , |
03 | age:14, |
04 | dsc: 'this is aaa' |
05 | } |
06 |
07 | var obj_2 = obj; |
08 | obj_2.age = 16; |
09 | console.log(obj); //{name: "abc", age: 16, dsc: "this is aaa"} |
10 |
11 | var obj_3 = Object.freeze(obj); |
12 | obj_3.age = 20; |
13 | obj_3.data = 'sssssssss' ; |
14 | console.log(obj); //{name: "abc", age: 14, dsc: "this is aaa"} |
Object.freeze()
方法,不可以操作原来的obj。