非標準。使用しないでください!
式クロージャの構文は、非推奨とされた Firefox 固有の機能であり、Firefox Firefox 60 で削除されました。将来向きの用途には、アロー関数 の使用を検討してください。
式クロージャの構文は、非推奨とされた Firefox 固有の機能であり、Firefox Firefox 60 で削除されました。将来向きの用途には、アロー関数 の使用を検討してください。
式クロージャは、単純な関数を書くための短縮された関数構文です。
構文
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");
ブラウザの実装状況
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Update compatibility data on GitHub
| デスクトップ | モバイル | サーバー | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Expression closures | Chrome 未対応 なし | Edge 未対応 なし | Firefox 未対応 3 — 60 | IE 未対応 なし | Opera 未対応 なし | Safari 未対応 なし | WebView Android 未対応 なし | Chrome Android 未対応 なし | Firefox Android 未対応 4 — 60 | Opera Android 未対応 なし | Safari iOS 未対応 なし | Samsung Internet Android 未対応 なし | nodejs 未対応 なし |
凡例
- 未対応
- 未対応
- 非標準。ブラウザー間の互換性が低い可能性があります。
- 非標準。ブラウザー間の互換性が低い可能性があります。
- 非推奨。新しいウェブサイトでは使用しないでください。
- 非推奨。新しいウェブサイトでは使用しないでください。