Esta traducción está incompleta. Por favor, ayuda a traducir este artículo del inglés.

El método Object.isSealed() si el objeto está sellado.

Syntax

Object.isSealed(obj)

Parámetros

obj
El objeto que debe ser verificado.

Valor devuelto

Un Boolean indicando si el objeto dado está sellado.

Descripción

Devuelve true si el objeto está sellado, de lo contrario devuelve false. Un objeto está sellado si no es extensible y si todas sus propiedades no se pueden configurar y por lo tanto no removibles (pero no necesariamente no modificables).

Ejemplos

// Los objetos no están sellados por defecto
var empty = {};
Object.isSealed(empty); // === false

// Si haces un objeto vacío no extendible,
// está vacíamente sellado
Object.preventExtensions(empty);
Object.isSealed(empty); // === true

// Lo mismo no es vedad sobre un objeto no vacío,
// a menos que sus propiedades son todas no configurables.
var hasProp = { fee: 'fie foe fum' };
Object.preventExtensions(hasProp);
Object.isSealed(hasProp); // === false

// Pero hazlas todas no configurables
// y el objeto se vuelve sellado.
Object.defineProperty(hasProp, 'fee', {
  configurable: false
});
Object.isSealed(hasProp); // === true

// La manerá más facil de sellar un objeto, por supuesto,
// es Object.seal
var sealed = {};
Object.seal(sealed);
Object.isSealed(sealed); // === true

// Un objeto sellado es, por definición, no extendible.
Object.isExtensible(sealed); // === false

// Un objeto sellado puodría estar congelado,
// pero no tiene que ser.
Object.isFrozen(sealed); // === true 
// (Todas las propiedades también no modificables)

var s2 = Object.seal({ p: 3 });
Object.isFrozen(s2); // === false 
// ('p' todavía es modificable)

var s3 = Object.seal({ get p() { return 0; } });
Object.isFrozen(s3); // === true
// (solo la configurabilidad es importante para las propiedades de acceso)

Notes

En ES5, si el argumento de este método no es un objeto (primitivo), entonces causará un TypeError. En ES2015, un argumento que no sea un objeto será tratado como si fuera un objeto sellado ordinario, simplemente devuelve true.

Object.isSealed(1);
// TypeError: 1 no es un objeto (ES5 code)

Object.isSealed(1);
// true                          (ES2015 code)

Especificaciones

Specification Status Comment
ECMAScript 5.1 (ECMA-262)
La definición de 'Object.isSealed' en esta especificación.
Standard Definición inicial. Implementada en JavaScript 1.8.5.
ECMAScript 2015 (6th Edition, ECMA-262)
La definición de 'Object.isSealed' en esta especificación.
Standard  
ECMAScript Latest Draft (ECMA-262)
La definición de 'Object.isSealed' en esta especificación.
Draft  

Browser compatibility

Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidiOS SafariSamsung InternetNode.js
Soporte básicoChrome Soporte completo 6Edge Soporte completo SiFirefox Soporte completo 4IE Soporte completo 9Opera Soporte completo 12Safari Soporte completo 5.1WebView Android Soporte completo SiChrome Android Soporte completo SiEdge Mobile Soporte completo SiFirefox Android Soporte completo 4Opera Android Soporte completo SiSafari iOS Soporte completo SiSamsung Internet Android Soporte completo Sinodejs Soporte completo Si

Leyenda

Soporte completo  
Soporte completo

See also

Etiquetas y colaboradores del documento

Colaboradores en esta página: cbalderasc
Última actualización por: cbalderasc,