Introducción
Cuando se llama a una instrucción de retorno en una función, la ejecución de esta función se detiene. Si se especifica, se devuelve un valor dado al llamador de la función. Si se omite la expresión, undefined
se devuelve en su lugar.
return expression;
Las funciones pueden regresar:
- Valores primitivos (cadena, número, booleano, etc.)
- Tipos de objetos (matrices, objetos, funciones, etc.)
Nunca devuelva algo en una nueva línea sin usar paréntesis. Esta es una peculiaridad de JavaScript y el resultado no estará definido. Trate de usar siempre paréntesis cuando devuelva algo en varias líneas.
function foo() { return 1; } function boo() { return ( 1 ); } foo(); --> undefined boo(); --> 1
Ejemplos
La siguiente función devuelve el cuadrado de su argumento, x , donde x es un número.
function square(x) { return x * x; }

Ejecutar código
La siguiente función devuelve el producto de sus argumentos, arg1 y arg2 .
function myfunction(arg1, arg2){ var r; r = arg1 * arg2; return(r); }

Ejecutar código
Cuando una función tiene return
un valor, el valor se puede asignar a una variable usando el operador de asignación ( =
). En el siguiente ejemplo, la función devuelve el cuadrado del argumento. Cuando la función se resuelve o finaliza, su valor es el return
valor ed. Luego, el valor se asigna a la variable squared2
.
function square(x) { return x * x; } let squared2 = square(2); // 4
Si no hay una declaración de retorno explícita, lo que significa que a la función le falta la return
palabra clave, la función regresa automáticamente undefined
.
En el siguiente ejemplo, a la square
función le falta la return
palabra clave. Cuando el resultado de llamar a la función se asigna a una variable, la variable tiene un valor de undefined
.
function square(x) { let y = x * x; } let squared2 = square(2); // undefined

Ejecutar código