This article needs an editorial review. How you can help.
La paraula clau function
es pot utilitzar per definir una funció dins d'una expressió.
Sintaxi
function [nom]([paràm1[, paràm2[, ..., paràmN]]]) { sentències }
Paràmetres
nom
- El nom de la funció. Es pot ometre, i en aquest cas la funció seria anònima. El nom és només local pel cos de la funció.
paràmN
- El nom d'un argument que es passa a la funció.
sentències
- Les sentències que constitueixen el cos de la funció.
Descripció
Una expressió d'una funció és molt semblant i té gairebé la mateixa sintaxi que una sentència d'una funció (function sentència d'una funció per més detalls). La principal diferència entre l'expressió d'una funció i una sentèndia d'una expressió és el nom de la functió, el qual es pot ometre en expressions de funcions per tal de crear funcions anònimes. Una expressió d'una funció es pot utilitzar com a un IIFE (Immediately Invoked Function Expression) que s'executa un cop s'ha definit. Vegeu també el capítol sobre funcions per més informació.
Exemples
L'exemple següent defineix una funció sense nom i l'assigna a x
. La funció retorna el quadrat del seu argument:
var x = function(y) { return y * y; };
Expressió d'una funció amb nom
Si vols fer referència a la funció actual dins del cos de la funció, necessitaràs crear una expressió d'una funció amb nom. Aquest nom és llavors només local pel cos de la funció (àmbit). AIxò també evita utilitzar la propietat no estàndard arguments.callee.
var math = { 'factorial': function factorial(n) { if (n <= 1) return 1; return n * factorial(n - 1); } };
Especificacions
Especificació | Estat | Comentaris |
---|---|---|
ECMAScript 2016 Draft (7th Edition, ECMA-262) The definition of 'Function definitions' in that specification. |
Draft | |
ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'Function definitions' in that specification. |
Standard | |
ECMAScript 5.1 (ECMA-262) The definition of 'Function definition' in that specification. |
Standard | |
ECMAScript 3rd Edition (ECMA-262) The definition of 'Function definition' in that specification. |
Standard | Definició inicial. Implementat en JavaScript 1.5. |
Compatibilitat amb navegadors
Característica | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Suport bàsic | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |
Característica | Android | Chrome per Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Suport bàsic | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |