忽略的知识点-Object.freeze
1. freeze作用
方法可以冻结一个对象。
1. 一个被冻结的对象再也不能被修改; demo
2. 冻结了一个对象则不能向这个对象添加新的属性,
3. 不能删除已有属性,
4. 不能修改该对象已有属性的可枚举性、可配置性、可写性,
5. 不能修改已有属性的值。
6. 冻结一个对象后该对象的原型也不能被修改。
7. freeze()
返回和传入的参数相同的对象。
2. 注意点
1. 使用freeze,在非严格模式下会默默失败, 在严格模式下会报错
2. freeze只是浅冻结, 只会冻结当前对象具备的属性, 但是深层次的对象不会被冻结
obj1 = { internal: {} };Object.freeze(obj1);
obj1.internal.a = 'aValue';obj1.internal.a // 'aValue'
3. 深冻结,需要遍历对象的属性,对对象类型的属性执行object.freeze
标题:忽略的知识点-Object.freeze
作者:hugh0524
地址:https://blog.uproject.cn/articles/2019/05/14/1557812984715.html
0 0