Our volunteers haven't translated this article into 한국어 yet. Join us and help get the job done!
You can also read the article in English (US).

Non-standard. Do not use!
The expression closure syntax is a deprecated Firefox-specific feature and has been removed starting with Firefox 60. For future-facing usages, consider using arrow functions.

Expression closures are a shorthand function syntax for writing simple functions.

Syntax

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

Parameters

name
The function name. Can be omitted, in which case the function is anonymous. The name is only local to the function body.
paramN
The name of an argument to be passed to the function. A function can have up to 255 arguments.
expression
The expression which comprise the body of the function.

Description

This addition is nothing more than a shorthand for writing simple functions, giving the language something similar to a typical Lambda notation.

JavaScript 1.7 and older:

function(x) { return x * x; }

JavaScript 1.8:

function(x) x * x

This syntax allows you to leave off the braces and 'return' statement - making them implicit. There is no added benefit to writing code in this manner, other than having it be syntactically shorter.

Examples

A shorthand for binding event listeners:

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

Using this notation with some of the array functions from JavaScript 1.6:

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

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support No No3 — 60 No No No
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support No No No4 — 60 No No No

See also

문서 태그 및 공헌자

 이 페이지의 공헌자: fscholz, nmve, arai
 최종 변경: fscholz,