--- title: Порожній оператор slug: Web/JavaScript/Reference/Statements/Empty tags: - JavaScript - Оператор translation_of: Web/JavaScript/Reference/Statements/Empty ---
Порожній оператор використовується, щоб не надавати інструкції там, де синтаксис JavaScript їх очікує.
;
Порожній оператор - це крапка з комою (;), вона позначає, що жодної інструкції не буде виконано, навіть якщо синтаксис JavaScript її вимагає. Протилежна поведінка, коли ви бажаєте виконати декілька інструкцій, але JavaScript дозволяє лише одну, можлива за допомогою блоку; він об'єднує декілька інструкцій у одну.
Порожній оператор іноді використовується у циклах. Дивіться наступний приклад з порожнім тілом циклу:
var arr = [1, 2, 3]; // Присвоїти всім елементам масиву значення 0 for (i = 0; i < arr.length; arr[i++] = 0) /* порожній оператор */ ; console.log(arr) // [0, 0, 0]
Заувага: Гарною ідеєю є коментувати навмисне використання порожнього оператора, оскільки його буває важко відрізнити від звичайної крапки з комою. У наступному прикладі його використання, мабуть, не є навмисним:
if (condition); // Обережно, цей "if" нічого не робить! killTheUniverse() // Тому це ніколи не виконається!!!
Інший приклад: Конструкція if...else
без фігурних дужок ({}
). Якщо three
дорівнює true
, то нічого не відбудеться, four
не грає ролі, і, таким чином, функція launchRocket()
у випадку else
не буде виконана.
if (one) doOne(); else if (two) doTwo(); else if (three) ; // тут нічого else if (four) doFour(); else launchRocket();
Специфікація | Статус | Коментар |
---|---|---|
{{SpecName('ESDraft', '#sec-empty-statement', 'Empty statement')}} | {{Spec2('ESDraft')}} | |
{{SpecName('ES6', '#sec-empty-statement', 'Empty statement')}} | {{Spec2('ES6')}} | |
{{SpecName('ES5.1', '#sec-12.3', 'Empty statement')}} | {{Spec2('ES5.1')}} | |
{{SpecName('ES3', '#sec-12.3', 'Empty statement')}} | {{Spec2('ES3')}} | |
{{SpecName('ES1', '#sec-12.3', 'Empty statement')}} | {{Spec2('ES1')}} | Початкове визначення. |
{{Compat("javascript.statements.empty")}}