MDN’s new design is in Beta! A sneak peek: https://blog.mozilla.org/opendesign/mdns-new-design-beta/

Expression closures

Не является стандартом. Не используйте данный синтаксис!
Синтаксис замкнутого выражения является устаревшей возможностью SpiderMonkey и будет удален. Используйте вместо него стрелочные функции.

Замкнутые выражения – это синтаксис для удобной записи коротких и простых функций.

Синтаксис

function [name]([param1[, param2[, ..., paramN]]])
   expression

Параметры

name
Имя функции. Может быть пропущено, в таком случае функция будет являться анонимной. Имя функции доступно только в теле функции.
paramN
Имя аргумента, передаваемого функции. Всего может быть передано вплоть до 255 аргументов.
expression
Выражение, содержащее тело функции.

Описание

Этот функционал – ничто иное как короткая нотация для записи простых функций. Он призван добавить в язык нечто похожее на Лямбда-исчисления.

JavaScript 1.7 и старше:

function(x) { return x * x; }

JavaScript 1.8:

function(x) x * x

Такой синтаксис позволяет отбросить фигурные скобки и оператор return. Данный подход, кроме краткости записи, иных преимуществ не имеет.

Примеры использования

Короткая запись для привязки слушателей событий:

 document.addEventListener("click", function() false, true);

Использование такой записи для работы с функциями массивов из JavaScript 1.6:

elems.some(function(elem) elem.type == "text");

Таблица совместимости

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support Нет (Да) Нет Нет Нет
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support Нет Нет (Да) Нет Нет Нет

 

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

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

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