Пустое выражение

Пустое выражение используется, когда выражение не нужно, хотя синтаксис 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 истинно, ничего не пройзойдет, four не важна, и функция launchRocket() тоже не запустится.

if (one)
  doOne();
else if (two)
  doTwo();
else if (three)
  ; // nothing here
else if (four)
  doFour();
else
  launchRocket();

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

Спецификация Статус Комментарий
ECMAScript 2016 Draft (7th Edition, ECMA-262)
Определение 'Empty statement' в этой спецификации.
Черновик  
ECMAScript 2015 (6th Edition, ECMA-262)
Определение 'Empty statement' в этой спецификации.
Стандарт  
ECMAScript 5.1 (ECMA-262)
Определение 'Empty statement' в этой спецификации.
Стандарт  
ECMAScript 3rd Edition (ECMA-262)
Определение 'Empty statement' в этой спецификации.
Стандарт  
ECMAScript 1st Edition (ECMA-262)
Определение 'Empty statement' в этой спецификации.
Стандарт Изначальное определение

Поддержка браузерами

Возможность Chrome Firefox (Gecko) Internet Explorer Opera Safari
Базовая поддержка (Да) (Да) (Да) (Да) (Да)
Возможность Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Базовая поддержка (Да) (Да) (Да) (Да) (Да) (Да)

Смотрите также

Метки документа и участники

 Внесли вклад в эту страницу: BychekRU
 Обновлялась последний раз: BychekRU,