式クロージャ

非標準。使用しないでください!
式クロージャの構文は、非推奨とされた SpiderMonkey 固有の機能であり、将来削除されます。将来向きの用途には、アロー関数 の使用を検討してください。

式クロージャは、単純な関数を書くための短縮された関数構文です。

構文

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

引数

name
関数名。関数が 匿名 の場合、省略できます。名前は関数本体だけのローカルです。
paramN
関数に渡される引数の名前。関数は、最大 255 個の引数を持つことができます。
expression
関数本体を構成する式。

説明

これは、単純な関数を書くための短縮された関数構文にすぎません。典型的な Lambda 表記 に似た言語で書くためのものです。

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");

ブラウザの実装状況

機能 Chrome Firefox (Gecko) Internet Explorer Opera Safari
基本サポート 未サポート (有) 未サポート 未サポート 未サポート
機能 Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
基本サポート 未サポート 未サポート (有) 未サポート 未サポート 未サポート

Gecko 固有のノート

Gecko / SpiderMonkey 45 (Firefox 45 / Thunderbird 45 / SeaMonkey 2.42) 以降、式クロージャが使用された場合のコンソール警告が追加されました (バグ 995610)。

関連情報

ドキュメントのタグと貢献者

 このページの貢献者: Marsf, shide55
 最終更新者: Marsf,