JavaScript Object.seal()

Definição e uso

Object.seal() Método usado para impedir a adição ou exclusão de propriedades do objeto, e tornar as propriedades existentes não configuráveis.

Object.seal() O método falhará silenciosamente no modo não estrito.

Object.seal() O método lançará um erro TypeError no modo estrito.

Pode ser usado Object.isSealed() Método usado para verificar se um objeto foi selado.

Métodos relacionados:

Object.preventExtensions() Permite a modificação, mas bloqueia a adição de propriedades.

Object.seal() Permite a modificação, mas bloqueia a adição e exclusão de propriedades.

Object.freeze() Bloqueia a modificação, adição e exclusão de propriedades.

Object.isExtensible() Se o objeto for extensível, retorna true.

Object.isSealed() Se o objeto estiver selado, retorna true.

Object.isFrozen() Se o objeto estiver congelado, retorna true.

Instância

Exemplo 1

"use strict"
// Criar objeto
const person = {
  firstName: "Bill",
  lastName: "Gates",
  age: 50,
  eyeColor: "blue"
};
// Selar objeto
Object.seal(person);
// A seguir, ocorrerá um erro:
delete person.age;

Experimente você mesmo

Exemplo 2

const fruits = ["Banana", "Orange", "Apple", "Mango"];
Object.seal(fruits);
// A seguir, ocorrerá um erro:
fruits.push("Kiwi");

Experimente você mesmo

Sintaxe

Object.seal(object)

Parâmetro

Parâmetro Descrição
object Obrigatório. O objeto a ser selado.

Retorno

Tipo Descrição
Object Objeto selado.

Suporte do Navegador

Object.seal() É uma característica do ECMAScript5 (ES5).

A partir de julho de 2013, todos os navegadores modernos suportam completamente o 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