void operator

by 1 contributor:

This translation is incomplete. Please help translate this article from English.

Сводка

Оператор void вычисляет переданное выражение и возвращает undefined.

Синтаксис

void expression

Описание

Этот оператор позволяет вставлять выражения, которые производят дополнительные действия, в места, где ожидаеся undefined.

Оператор void часто используется для получения примитивного значения undefined, используя "void(0)" (что эквивалентно "void 0"). В подобных случаях можно просто использовать глобальную переменную undefined (предполагая, что её значение по-умолчанию не было изменено).

Самовызывающаяся функция (IIFE)

С оператором void можно использовать самовызывающиеся функции.

void function iife() {
    var bar = function () {};
    var baz = function () {};
    var foo = function () {
        bar();
        baz();
     };
    var biz = function () {};

    foo();
    biz();
}();

JavaScript URIs

Когда браузер переходит по javascript: URI, он вычисляет код в URI и земеняет содержание страницы возвращенным значением, если оно не равно undefined. Например:

<a href="javascript:void(0);">
  Click here to do nothing
</a>

<a href="javascript:void(document.body.style.backgroundColor='green');">
  Click here for green background
</a>

Однако заметим, что не рекомендуется использовать псевдо-протокол javascript:.  Лучше прибегнуть к другими альтернативами, такими, как обработчики событий.

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

Спецификация Статус Комментарий
ECMAScript 1st Edition. Стандарт Изначальное определение. Реализована в JavaScript 1.1.
ECMAScript 5.1 (ECMA-262)
Определение 'The void Operator' в этой спецификации.
Стандарт  
ECMAScript 6 (ECMA-262)
Определение 'The void Operator' в этой спецификации.
Кандидат в рекомендации  

Совместимость с браузерами

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

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

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

Contributors to this page: AlexChuev
Обновлялась последний раз: AlexChuev,
Скрыть боковую панель