js Object 的冻结密封扩展的相同以及不同点

Posted tongchuanxing

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js Object 的冻结密封扩展的相同以及不同点相关的知识,希望对你有一定的参考价值。

Object.freezed() 冻结  检查函数 Object.isFrozen(obj)

Object.seal() 密封   检查函数 Object.isSealed(obj)

Object.preventExtensions()扩展   检查函数 Object.isExtensible(obj)

 

共同点:

都不能添加新的属性
(有一个例外就是属性是对象的时候,可以在这个子属性上添加属性(因为对象是一个引用类型))

不同点:

Object.freezed() 和 Object.seal()  不能删除现有属性,不能修改已有属性的可枚举性、可配置性、可写性

Object.preventExtensions() 可以删除现有属性

Object.freezed() 不能修改已有属性的值

Object.seal() 和 Object.preventExtensions()可以修改已有属性的值

以上是关于js Object 的冻结密封扩展的相同以及不同点的主要内容,如果未能解决你的问题,请参考以下文章

ES5 对象的扩展(Object.preventExtensions)密封(Object.seal)和冻结(Object.freeze)

分享Object中常用的一些方法

js中的Object

面向对象

js 常见的Object方法

Object.freeze(); 方法冻结一个对象。