From 218934fa2ed1c702a6d3923d2aa2cc6b43c48684 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:43:23 -0500 Subject: initial commit --- .../global_objects/object/isextensible/index.html | 112 +++++++++++++++++++++ 1 file changed, 112 insertions(+) create mode 100644 files/uk/web/javascript/reference/global_objects/object/isextensible/index.html (limited to 'files/uk/web/javascript/reference/global_objects/object/isextensible') diff --git a/files/uk/web/javascript/reference/global_objects/object/isextensible/index.html b/files/uk/web/javascript/reference/global_objects/object/isextensible/index.html new file mode 100644 index 0000000000..440aa85e1f --- /dev/null +++ b/files/uk/web/javascript/reference/global_objects/object/isextensible/index.html @@ -0,0 +1,112 @@ +--- +title: Object.isExtensible() +slug: Web/JavaScript/Reference/Global_Objects/Object/isExtensible +tags: + - ECMAScript5 + - JavaScript + - Object + - метод +translation_of: Web/JavaScript/Reference/Global_Objects/Object/isExtensible +--- +
{{JSRef}}
+ +

Метод Object.isExtensible() визначає, чи є об'єкт розширюваним (чи може він бути доповнений новими властивостями).

+ +
{{EmbedInteractiveExample("pages/js/object-isextensible.html")}}
+ + + +

Синтаксис

+ +
Object.isExtensible(obj)
+ +

Параметри

+ +
+
obj
+
Об'єкт, який необхідно перевірити.
+
+ +

Значення, що повертається

+ +

{{jsxref("Boolean","Булеве значення")}}, що вказує, чи є об'єкт розширюваним.

+ +

Опис

+ +

За замовчуванням об'єкти є розширюваними: нові властивості можуть додаватися до них, і (у рушіях, що підтримують {{jsxref("Object.proto", "__proto__")}} {{deprecated_inline}}) їхня властивість __proto__ може бути змінена. Об'єкт можна зробити нерозширюваним за допомогою {{jsxref("Object.preventExtensions()")}}, {{jsxref("Object.seal()")}} або {{jsxref("Object.freeze()")}}.

+ +

Приклади

+ +
// Нові об'єкти є розширюваними.
+var empty = {};
+Object.isExtensible(empty); // === true
+
+// ...але це можна змінити.
+Object.preventExtensions(empty);
+Object.isExtensible(empty); // === false
+
+// Запечатані об'єкти є за визначенням нерозширюваними.
+var sealed = Object.seal({});
+Object.isExtensible(sealed); // === false
+
+// Заморожені об'єкти також за визначенням є нерозширюваними.
+var frozen = Object.freeze({});
+Object.isExtensible(frozen); // === false
+
+ +

Примітки

+ +

У ES5, якщо аргументом даного методу виступає не об'єкт (примітивне значення), це спричинить помилку {{jsxref("TypeError")}}. У ES2015 ж, якщо аргументом методу буде не об'єкт, він буде сприйнятий як звичайний нерозширюваний об'єкт, тобто, вихідним значенням буде false.

+ +
Object.isExtensible(1);
+// TypeError: 1 is not an object (код ES5)
+
+Object.isExtensible(1);
+// false                         (код ES2015)
+
+ +

Специфікації

+ + + + + + + + + + + + + + + + + + + + + + + + +
СпецифікаціяСтатусКоментар
{{SpecName('ES5.1', '#sec-15.2.3.13', 'Object.isExtensible')}}{{Spec2('ES5.1')}}Початкове визначення. Реалізоване у JavaScript 1.8.5.
{{SpecName('ES6', '#sec-object.isextensible', 'Object.isExtensible')}}{{Spec2('ES6')}}
{{SpecName('ESDraft', '#sec-object.isextensible', 'Object.isExtensible')}}{{Spec2('ESDraft')}}
+ +

Сумісність з веб-переглядачами

+ +
+ + +

{{Compat("javascript.builtins.Object.isExtensible")}}

+
+ +

Див. також

+ + -- cgit v1.2.3-54-g00ecf