function expression

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

Compatibilitat amb navegadors

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!
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)

Vegeu tamb茅