Не является стандартом. Не используйте данный синтаксис!
Синтаксис замкнутого выражения является устаревшей возможностью SpiderMonkey и будет удален. Используйте вместо него стрелочные функции.
Синтаксис замкнутого выражения является устаревшей возможностью 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 | Нет | Нет | (Да) | Нет | Нет | Нет |