This article needs an editorial review. How you can help.
Resum
La sentència return finalitza l'execució de la funció i especifica un valor que retornarà a la funció que l'ha cridat.
Sintaxi
return [[expressió]];
expressió- L'expressió que retorna. En cas d'ometre-s, es retorna
undefined.
Descripció
Quan una sentència return és cridada dins una funció, l'execució d'aquesta funció s'atura. En cas d'especificar-se, un valor donat és retornat a la funció que l'ha cridat. Si s'omet l'expressió, es retornarà undefined. En les següents sentències return totes aturen l'execució de la funció:
return; return true; return false; return x; return x + y / 3;
Insersió automàtica de punt i coma
La sentència return es veu afectada per la insersió automàtica de punt i coma (). No hi ha cap final de línia entre la paraula clau return i l'expressió permesa.
return a + b; // is transformed by ASI into return; a + b;
Exemples
Exemple: Fer servir return
La següent funció retorna el quadrat del seu argument, x, on x és un nombre.
function square(x) {
return x * x;
}
Exemple: Interrompre una funció
Una funció s'atura immediatament en el moment en que es crida return.
function counter() {
for (var count = 1; ; count++) { // infinite loop
console.log(count + "A"); // until 5
if (count === 5) {
return;
}
console.log(count + "B"); // until 4
}
console.log(count + "C"); // never appears
}
counter();
// Output:
// 1A
// 1B
// 2A
// 2B
// 3A
// 3B
// 4A
// 4B
// 5A
Exemple: Returning a function
Per més informació sobre closures, llegiu la Guia de JavaScript.
function magic(x) {
return function calc(x) { return x * 42};
}
var answer = magic();
answer(1337); // 56154
Especificacions
| Especificació | Estat | Comentaris |
|---|---|---|
| 1a edició de ECMAScript | Estàndard | Definició inicial. |
| ECMAScript 5.1 (ECMA-262) The definition of 'Return statement' in that specification. |
Standard | |
| ECMAScript 6 (ECMA-262) The definition of 'Return statement' in that specification. |
Release Candidate |
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) |