JavaScript Object.seal()

ການອະທິບາຍແລະການນໍາໃຊ້

Object.seal() ກົນລະບຽບທີ່ສະແດງວ່າບໍ່ສາມາດເພີ່ມຫຼືຫຼັງບັນດາປະກອບຂອງວັດຖຸໄດ້ຫຼືເຮັດໃຫ້ບັນດາປະກອບທີ່ມີຢູ່ບໍ່ສາມາດການການການຈັດການ.

Object.seal() ກົນລະບຽບຈະບໍ່ມີສຽງບັນທຶກຫຼັງໃນການໃຊ້ຕົວລະບຽບບໍ່ຕິດຕາມ.

Object.seal() ກົນລະບຽບຈະປາກົດ TypeError ໃນການໃຊ້ຕົວລະບຽບການຕິດຕາມ.

ສາມາດນຳໃຊ້ Object.isSealed() ກົນລະບຽບທີ່ພິສູດວ່າບັນດາວັດຖຸຈະຖືກກັກກັນ.

ກົນລະບຽບພາຍໃນ

Object.preventExtensions() 允许修改,但阻止添加属性。

Object.seal() 允许修改,但阻止添加和删除属性。

Object.freeze() 阻止修改、添加和删除属性。

Object.isExtensible() 如果对象可扩展,则返回 true。

Object.isSealed() 如果对象是密封的,则返回 true。

Object.isFrozen() 如果对象被冻结,则返回 true。

实例

例子 1

"use strict"
// 创建对象
const person = {
  firstName: "Bill",
  lastName: "Gates",
  age: 50,
  eyeColor: "blue"
};
// 密封对象
Object.seal(person);
// 以下操作将抛出错误
delete person.age;

亲自试一试

例子 2

const fruits = ["Banana", "Orange", "Apple", "Mango"];
Object.seal(fruits);
// 以下操作将抛出错误:
fruits.push("Kiwi");

亲自试一试

语法

Object.seal(object)

参数

参数 描述
object 必需。要密封的对象。

返回值

类型 描述
Object 被密封后的对象。

浏览器支持

Object.seal() 是 ECMAScript5 (ES5) 的特性。

自 2013 年 7 月起,所有现代浏览器均完全支持 ES5(JavaScript 2009):

Chrome Edge Firefox Safari Opera
Chrome 23 IE/Edge 11 Firefox 21 Safari 6 Opera 15
2012.9 2012.9 2013.4 2012.7 2013.7