function

Resum

La declaraci贸 d'una funci贸 defineix una funci贸 amb uns par脿metres especificats.

Tamb茅 podeu definir funcions fent servir el constructor Function i un function expression.

Sintaxi

function nom([par脿m,[, par脿m,[..., par脿m]]]) {
   [sent猫ncies]
}
nom
El nom de la funci贸.
par脿m
El nom d'un argument que se li passar脿 a la funci贸. Una funci贸 pot arribar a tenir fins a 255 arguments.
sent猫ncies
Les sent猫ncies que comprenen el cos de la funci贸.

Descripci贸

Una funci贸 creada amb una declaraci贸 d'una funci贸 茅s un objecte Function i t茅 totes les propietats, m猫todes i comportament dels objectes Function. Vegeu Function per informaci贸 detallada sobre funcions.

Una funci贸 tamb茅 es pot crear fent servir una expressi贸 (vegeu function expression).

Per defecte, les funcions retornen undefined. Per tal de retornar qualsevol altre valor, la funci贸 ha de tenir una sent猫ncia return que especifiqui el valor que retorna.

Funcions creades de forma condicional

Les funcions poden ser declarades de forma condicional, 茅s a dir, una sent猫ncia d'una funci贸 pot estar aniuada dins d'una sent猫ncia if. La majoria de navegadors que no siguin Mozilla tractaran aquestes declaracions condicionals com a declaracions incondicionals i crear脿n la funci贸 tant si la condici贸 茅s vertadera o falsa, vegeu aquest article per una visi贸 general. Per tant, no s'haurien de fer servir, per creacions condicionals feu servir expressions de funcions.

Declarar les funcions abans de definir-les (hosting)

Function declarations in JavaScript are hoisting the function definition. En Javascript es pot ser cridar una funci贸 abans de declarar-la. En angl猫s existeix un ver:

hoisted(); // logs "foo"

function hoisted() {
  console.log("foo");
}

Vegeu que function expressions no estan hoisted:

notHoisted(); // TypeError: notHoisted is not a function

var notHoisted = function() {
   console.log("bar");
};

Exemples

Exemple: Fer servir function

El codi seg眉ent declara una funci贸 que retorna la quantitat total de vendes, quan se li d贸na el nombre d'unitat venudes d' a, b, i c.

function calc_sales(units_a, units_b, units_c) {
   return units_a*79 + units_b * 129 + units_c * 699;
}

Especificacions

Especificaci贸 Estat Comentaris
1a edici贸 de ECMAScript. Est脿ndard Definici贸 inicia帽. Implementat en JavaScript 1.0
ECMAScript 5.1 (ECMA-262)
The definition of 'Function definition' in that specification.
Standard  
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'Function definitions' in that specification.
Standard  

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茅