Reflect.isExtensible()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since 2016ë 9ì.
Reflect.isExtensible() ì ì ë©ìëë ê°ì²´ì íì¥ ê°ë¥ ì¬ë¶, ì¦ ìì±ì ì¶ê°í ì ìëì§ íë³í©ëë¤. Object.isExtensible()ê³¼ ì ì¬íì§ë§ ì°¨ì´ì ë ììµëë¤.
ìëí´ ë³´ê¸°
const object1 = {};
console.log(Reflect.isExtensible(object1));
// Expected output: true
Reflect.preventExtensions(object1);
console.log(Reflect.isExtensible(object1));
// Expected output: false
const object2 = Object.seal({});
console.log(Reflect.isExtensible(object2));
// Expected output: false
구문
Reflect.isExtensible(target);
매ê°ë³ì
target-
íì¥ ê°ë¥ ì¬ë¶ë¥¼ íë³í ëì ê°ì²´.
ë°í ê°
ê°ì²´ì íì¥ ê°ë¥ ì¬ë¶ë¥¼ ëíë´ë Boolean.
ìì¸
ì¤ëª
Reflect.isExtensible() ë©ìëë Object.isExtensible()ì ì ì¬íê², ê°ì²´ì ìë¡ì´ ìì±ì ì¶ê°í ì ìëì§ íë³í©ëë¤.
ìì
>Reflect.isExtensible() ì¬ì©í기
Object.isExtensible()ë ì°¸ê³ íì¸ì.
// ìë¡ì´ ê°ì²´ë íì¥ ê°ë¥
var empty = {};
Reflect.isExtensible(empty); // === true
// ...íì§ë§ ë°ê¿ ì ìì
Reflect.preventExtensions(empty);
Reflect.isExtensible(empty); // === false
// ë´ì¸í ê°ì²´ë íì¥ ë¶ê°ë¥í¨
var sealed = Object.seal({});
Reflect.isExtensible(sealed); // === false
// ëê²°í ê°ì²´ë íì¥ ë¶ê°ë¥í¨
var frozen = Object.freeze({});
Reflect.isExtensible(frozen); // === false
Object.isExtensible()ê³¼ì ì°¨ì´ì
Reflect.isExtensible()ì 첫 ë²ì§¸ 매ê°ë³ìê° ììê°ì´ë©´ TypeError를 ëì§ëë¤. ë°ë©´ Object.isExtensible()ì ì°ì ê°ì²´ë¡ ë³íì ìëí©ëë¤.
Reflect.isExtensible(1);
// TypeError: 1 is not an object
Object.isExtensible(1);
// false
ëª ì¸
| Specification |
|---|
| ECMAScript® 2027 Language Specification> # sec-reflect.isextensible> |