最严格的对象保护措施就是冻结对象了.冻结过后的对象,即不可以扩展,原有对象也不可以删除,因为[Writable]=false,所以对象的属性不可修改.
示例一:
1 var person={name:"guo"}; 2 Object.freeze(person); 3 person.age=29;//添加成员 4 alert(person.age);//undefined 5 delete person.name;//删除已有成员 6 alert(person.name);//guo 7 person.name="yansi";//修改已有成员 8 alert(person.name);//guo
示例二:isFrozen()用来检测对象是否冻结过的.
1 var person={name:"guo"}; 2 Object.freeze(person); 3 person.age=29;//添加成员 4 alert(person.age);//undefined 5 delete person.name;//删除已有成员 6 alert(person.name);//guo 7 person.name="yansi";//修改已有成员 8 alert(person.name);//guo 9 alert(Object.isFrozen(person));//true