aboutsummaryrefslogtreecommitdiff
path: root/files/uk/web/javascript/reference/global_objects/symbol/unscopables/index.html
diff options
context:
space:
mode:
Diffstat (limited to 'files/uk/web/javascript/reference/global_objects/symbol/unscopables/index.html')
-rw-r--r--files/uk/web/javascript/reference/global_objects/symbol/unscopables/index.html89
1 files changed, 0 insertions, 89 deletions
diff --git a/files/uk/web/javascript/reference/global_objects/symbol/unscopables/index.html b/files/uk/web/javascript/reference/global_objects/symbol/unscopables/index.html
deleted file mode 100644
index 5b90c252d4..0000000000
--- a/files/uk/web/javascript/reference/global_objects/symbol/unscopables/index.html
+++ /dev/null
@@ -1,89 +0,0 @@
----
-title: Symbol.unscopables
-slug: Web/JavaScript/Reference/Global_Objects/Symbol/unscopables
-tags:
- - ECMAScript 2015
- - JavaScript
- - Symbol
- - Властивість
- - Символ
-translation_of: Web/JavaScript/Reference/Global_Objects/Symbol/unscopables
----
-<div>{{JSRef}}</div>
-
-<p>Добревідомий символ <strong><code>Symbol.unscopables</code></strong> використовується, щоб визначити об'єкт, чиї імена особистих та успадкованих властивостей виключаються з прив'язок оточення <code><a href="/uk/docs/Web/JavaScript/Reference/Statements/with">with</a></code> для асоційованого об'єкта.</p>
-
-<div>{{EmbedInteractiveExample("pages/js/symbol-unscopables.html")}}</div>
-
-
-
-<h2 id="Опис">Опис</h2>
-
-<p>Символ <code>@@unscopables</code> (<code>Symbol.unscopables</code>) можна визначити на будь-якому об'єкті, щоб запобігти розкриттю імен властивостей в якості лексичних змінних у прив'язках оточення <code><a href="/uk/docs/Web/JavaScript/Reference/Statements/with">with</a></code>. Зауважте, що при використанні <a href="/en-US/docs/Web/JavaScript/Reference/Strict_mode">строгого режиму</a> інструкції <code>with</code> недоступні та, відповідно, не потребують цього символа.</p>
-
-<p>Присвоєння властивості значення <code>true</code> у об'єкті <code>unscopables</code> зробить її невидимою (<em>unscopable</em>), і, таким чином, вона не з'явиться у змінних лексичної області видимості. Присвоєння властивості значення <code>false</code> зробить її видимою (<code>scopable</code>), відповідно, вона з'явиться у змінних лексичної області видимості.</p>
-
-<p>{{js_property_attributes(0,0,0)}}</p>
-
-<h2 id="Приклади">Приклади</h2>
-
-<h3 id="Видимість_у_інструкціях_with">Видимість у інструкціях with</h3>
-
-<p>Наступний код добре працює у версіях ES5 та нижче. Однак, у ECMAScript 2015 та пізніших версіях був запроваджений метод {{jsxref("Array.prototype.keys()")}}. Це означає, що всередині оточення <code>with</code> "keys" тепер буде методом, а не змінною. Саме тоді був доданий символ <code>unscopables</code>. Вбудоване налаштування <code>unscopables</code> реалізоване у вигляді {{jsxref("Array.@@unscopables", "Array.prototype[@@unscopables]")}}, щоб запобігти потраплянню деяких методів масиву у область видимості <code>with</code>.</p>
-
-<pre class="brush: js notranslate">var keys = [];
-
-with (Array.prototype) {
- keys.push('something');
-}
-
-Object.keys(Array.prototype[Symbol.unscopables]);
-// ["copyWithin", "entries", "fill", "find", "findIndex",
-// "includes", "keys", "values"]
-</pre>
-
-<h3 id="Unscopables_у_обєктах">Unscopables у об'єктах</h3>
-
-<p>Ви також можете налаштувати <code>unscopables</code> для своїх власних об'єктів.</p>
-
-<pre class="brush: js notranslate">var obj = {
- foo: 1,
- bar: 2
-};
-
-obj[Symbol.unscopables] = {
- foo: false,
- bar: true
-};
-
-with (obj) {
- console.log(foo); // 1
- console.log(bar); // ReferenceError: bar is not defined
-}
-</pre>
-
-<h2 id="Специфікації">Специфікації</h2>
-
-<table class="standard-table">
- <tbody>
- <tr>
- <th scope="col">Специфікація</th>
- </tr>
- <tr>
- <td>{{SpecName('ESDraft', '#sec-symbol.unscopables', 'Symbol.unscopables')}}</td>
- </tr>
- </tbody>
-</table>
-
-<h2 id="Сумісність_з_веб-переглядачами">Сумісність з веб-переглядачами</h2>
-
-
-
-<p>{{Compat("javascript.builtins.Symbol.unscopables")}}</p>
-
-<h2 id="Див._також">Див. також</h2>
-
-<ul>
- <li>{{jsxref("Array.@@unscopables", "Array.prototype[@@unscopables]")}}</li>
- <li>оператор <code><a href="/uk/docs/Web/JavaScript/Reference/Statements/with">with</a></code> (недоступний у <a href="/uk/docs/Web/JavaScript/Reference/Strict_mode">строгому режимі</a>)</li>
-</ul>