一、对象冻结
Object.freeze()
1 | let objectToFreeze = { |
Object.isFrozen()
用于判断当前对象是否被冻结
1 | let objectToFreeze = { |
物体密封
像Frozen方法一样,Object.seal() 也将对象作为参数,Object.seal是Object.freeze较软的版本
1、不能删除或添加元素
2、但是可以修改现有元素
1 | let objectToSeal = { |
Object.isSealed(obj)
判断当前对象是否密封
1 | let objectToSeal = { |
与const对比
上面两个方法适用于对象,而const适用于binding。Object.freeze使对象不可变,而const创建一个不可变的绑定,为变量分配值后,就无法为该绑定分配新值。
原型
注意:如果对一个对象冻结或者密封后,就无法改变其原型
- 本文作者: gtt
- 本文链接: https://gtt011029.github.io/posts/38723/