Function definition: Difference between revisions
Content added Content deleted
(updated neko) |
|||
Line 797: | Line 797: | ||
=={{header|JavaScript}}== |
=={{header|JavaScript}}== |
||
===ES1-*=== |
|||
Using a '''function declaration'''. |
|||
Function Declaration |
|||
<lang javascript>function multiply(a,b) { |
<lang javascript>function multiply(a, b) { |
||
return a*b; |
|||
}</lang> |
|||
===ES3-*=== |
|||
The same function can be defined using a '''function expression''' where you express a function as a value of a variable. |
|||
Function Expression |
|||
<lang javascript>var multiply = function |
<lang javascript>var multiply = function(a, b) { |
||
return a * b; |
return a * b; |
||
};</lang> |
|||
Named Function Expression |
|||
<lang javascript>var multiply = function multiply(a, b) { |
|||
return a * b; |
|||
};</lang> |
|||
Method Definition |
|||
<lang javascript>var o = { |
|||
multiply: function(a, b) { |
|||
return a * b; |
|||
} |
|||
};</lang> |
|||
===ES5-*=== |
|||
Accessors |
|||
<lang javascript>var o = { |
|||
get foo() { |
|||
return 1; |
|||
}, |
|||
set bar(value) { |
|||
// do things with value |
|||
} |
|||
};</lang> |
|||
===ES6-*=== |
|||
Arrow Function |
|||
<lang javascript>var multiply = (a, b) => a * b; |
|||
var multiply = (a, b) => { return a * b }; |
|||
</lang> |
|||
Concise Body Method Definition |
|||
<lang javascript>var o = { |
|||
multiply(a, b) { |
|||
return a * b; |
|||
} |
|||
};</lang> |
};</lang> |
||