diff options
author | Ryan Johnson <rjohnson@mozilla.com> | 2021-04-29 16:16:42 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-04-29 16:16:42 -0700 |
commit | 95aca4b4d8fa62815d4bd412fff1a364f842814a (patch) | |
tree | 5e57661720fe9058d5c7db637e764800b50f9060 /files/uk/web/javascript/reference/statements/label | |
parent | ee3b1c87e3c8e72ca130943eed260ad642246581 (diff) | |
download | translated-content-95aca4b4d8fa62815d4bd412fff1a364f842814a.tar.gz translated-content-95aca4b4d8fa62815d4bd412fff1a364f842814a.tar.bz2 translated-content-95aca4b4d8fa62815d4bd412fff1a364f842814a.zip |
remove retired locales (#699)
Diffstat (limited to 'files/uk/web/javascript/reference/statements/label')
-rw-r--r-- | files/uk/web/javascript/reference/statements/label/index.html | 182 |
1 files changed, 0 insertions, 182 deletions
diff --git a/files/uk/web/javascript/reference/statements/label/index.html b/files/uk/web/javascript/reference/statements/label/index.html deleted file mode 100644 index b29fa8fb42..0000000000 --- a/files/uk/web/javascript/reference/statements/label/index.html +++ /dev/null @@ -1,182 +0,0 @@ ---- -title: Мітка -slug: Web/JavaScript/Reference/Statements/label -tags: - - JavaScript -translation_of: Web/JavaScript/Reference/Statements/label ---- -<div>{{jsSidebar("Statements")}}</div> - -<p><strong>Мітка </strong>(label) може використовуватися з операторами {{jsxref("Statements/break", "break")}} та {{jsxref("Statements/continue", "continue")}}. Вона додається попереду виразу у вигляді ідентифікатора, на який можна посилатися.</p> - -<div>{{EmbedInteractiveExample("pages/js/statement-label.html")}}</div> - - - -<div class="note"> -<p><strong>Заувага:</strong> Використання помічених циклів або блоків є дуже нестандартним підходом. Зазвичай використовуються виклики функцій замість стрибків у циклах.</p> -</div> - -<h2 id="Синтаксис">Синтаксис</h2> - -<pre class="syntaxbox notranslate"><em>label</em> : - <em>statement</em> -</pre> - -<dl> - <dt><code>label</code></dt> - <dd>Будь-який ідентифікатор JavaScript, який не є зарезервованим словом.</dd> - <dt><code>statement</code></dt> - <dd>Інструкція JavaScript. Оператор <code>break</code> може використовуватися з будь-якою поміченою конструкцією, а оператор <code>continue</code> може використовуватися з поміченими циклами.</dd> -</dl> - -<h2 id="Опис">Опис</h2> - -<p>Ви можете використати мітку, щоб ідентифікувати цикл, а потім скористатись операторами <code>break</code> чи <code>continue</code>, щоб вказати, що програма має перервати чи продовжити його виконання.</p> - -<p>Зауважте, що у JavaScript <em>немає</em> оператора <code>goto</code>, ви можете використовувати мітки лише з <code>break</code> або <code>continue</code>.</p> - -<p>У <a href="/uk/docs/Web/JavaScript/Reference/Strict_mode">строгому режимі</a> не можна використовувати "<code>let</code>" в якості імені мітки. Це спричинить викидання {{jsxref("SyntaxError")}} (let є зарезервованим ідентифікатором).</p> - -<h2 id="Приклади">Приклади</h2> - -<h3 id="Використання_поміченого_continue_з_циклами_for">Використання поміченого <code>continue</code> з циклами <code>for</code></h3> - -<pre class="brush: js notranslate">var i, j; - -loop1: -for (i = 0; i < 3; i++) { //Перший цикл for помічений як "loop1" - loop2: - for (j = 0; j < 3; j++) { //Другий цикл for помічений як "loop2" - if (i === 1 && j === 1) { - continue loop1; - } - console.log('i = ' + i + ', j = ' + j); - } -} - -// Результат: -// "i = 0, j = 0" -// "i = 0, j = 1" -// "i = 0, j = 2" -// "i = 1, j = 0" -// "i = 2, j = 0" -// "i = 2, j = 1" -// "i = 2, j = 2" -// Зауважте, що пропущені як "i = 1, j = 1", так і "i = 1, j = 2" -</pre> - -<h3 id="Використання_поміченого_оператора_continue">Використання поміченого оператора <code>continue</code></h3> - -<p>Маючи масив елементів та масив тестів, цей приклад рахує кількість елементів, які пройшли усі тести.</p> - -<pre class="brush: js notranslate">var itemsPassed = 0; -var i, j; - -top: -for (i = 0; i < items.length; i++) { - for (j = 0; j < tests.length; j++) { - if (!tests[j].pass(items[i])) { - continue top; - } - } - - itemsPassed++; -}</pre> - -<h3 id="Використання_поміченого_оператора_break_з_циклами_for">Використання поміченого оператора <code>break</code> з циклами <code>for</code></h3> - -<pre class="brush: js notranslate">var i, j; - -loop1: -for (i = 0; i < 3; i++) { //Перший цикл for помічений як "loop1" - loop2: - for (j = 0; j < 3; j++) { //Другий цикл for помічений як "loop2" - if (i === 1 && j === 1) { - break loop1; - } - console.log('i = ' + i + ', j = ' + j); - } -} - -// Результат: -// "i = 0, j = 0" -// "i = 0, j = 1" -// "i = 0, j = 2" -// "i = 1, j = 0" -// Зауважте різницю з попереднім прикладом з continue</pre> - -<h3 id="Використання_поміченого_оператора_break">Використання поміченого оператора <code>break</code></h3> - -<p>Маючи масив елементів та масив тестів, цей приклад визначає, чи усі елементи пройшли усі тести.</p> - -<pre class="brush: js notranslate">var allPass = true; -var i, j; - -top: -for (i = 0; items.length; i++) - for (j = 0; j < tests.length; i++) - if (!tests[j].pass(items[i])) { - allPass = false; - break top; - }</pre> - -<h3 id="Використання_поміченого_блоку_з_оператором_break">Використання поміченого блоку з оператором <code>break</code></h3> - -<p>Ви можете використовувати мітки всередині звичайних блоків, але тільки оператор <code>break</code> може працювати з мітками не у циклах.</p> - -<pre class="brush: js notranslate">foo: { - console.log('пере'); - break foo; - console.log('ця частина не виконається'); -} -console.log('стрибнув'); - -// цей код виведе: - -// "пере" -// "стрибнув </pre> - -<h3 id="Помічені_оголошення_функцій">Помічені оголошення функцій</h3> - -<p>Починаючи з ECMAScript 2015, помічені оголошення функцій тепер стандартизовані для не строгого режиму у <a href="http://www.ecma-international.org/ecma-262/6.0/#sec-labelled-function-declarations">додатку специфікації щодо веб-сумісності</a>.</p> - -<pre class="brush: js notranslate">L: function F() {}</pre> - -<p>Однак, у <a href="/uk/docs/Web/JavaScript/Reference/Strict_mode">строгому режимі</a> це викине помилку {{jsxref("SyntaxError")}}:</p> - -<pre class="brush: js notranslate">'use strict'; -L: function F() {} -// SyntaxError: functions cannot be labelled</pre> - -<p><a href="/uk/docs/Web/JavaScript/Reference/Statements/function*">Функції-генератори</a> також не можуть мати мітки ні у строгому, ні у звичайному режимі:</p> - -<pre class="brush: js notranslate">L: function* F() {} -// SyntaxError: generator functions cannot be labelled -</pre> - -<h2 id="Специфікації">Специфікації</h2> - -<table class="standard-table"> - <tbody> - <tr> - <th scope="col">Специфікація</th> - </tr> - <tr> - <td>{{SpecName('ESDraft', '#sec-labelled-statements', 'Labelled statement')}}</td> - </tr> - </tbody> -</table> - -<h2 id="Сумісність_з_веб-переглядачами">Сумісність з веб-переглядачами</h2> - - - -<p>{{Compat("javascript.statements.label")}}</p> - -<h2 id="Див._також">Див. також</h2> - -<ul> - <li>{{jsxref("Statements/break", "break")}}</li> - <li>{{jsxref("Statements/continue", "continue")}}</li> -</ul> |