javascript-retornos-funcion

Qué son y qué tipos de retornos de función hay en JavaScript

El retorno de una función es el valor que la función envía como resultado después de ejecutarse.

En JavaScript, se utiliza la palabra clave return para especificar el valor que se desea devolver.

Cuando una función alcanza una instrucción return, la ejecución de la función se detiene y el valor especificado se “devuelve” al lugar donde la función fue llamada.

La sintaxis básica para retornar un valor de una función es la siguiente:

function nombreFuncion() {
    return valor;
}

Veámoslo con un ejemplo sencillo

function sumar(a, b) {
  return a + b; // Devuelve la suma de a y b
}

// Almacena el valor devuelto (7) en la variable resultado
let resultado = sumar(3, 4); 

En este caso,

  • La función sumar calcula el valor de a + b.
  • return devuelve el resultado de la operación al lugar donde se llamó la función.
  • El valor devuelto (7) se almacena en la variable resultado.

Tipos de retornos de función en JavaScript

En JavaScript, los tipos de retorno de función pueden ser de distintos tipos.

Retorno de valor primitivo

Los valores primitivos incluyen tipos de datos como números, cadenas, booleanos, null, undefined y símbolos. Una función puede devolver cualquiera de estos tipos como resultado.

function obtenerNombre() {
    return "Luis";
}

let nombre = obtenerNombre(); // nombre será "Luis"

Retorno de objetos

JavaScript es un lenguaje orientado a objetos, y por supuesto, una función puede devolver objetos.

function crearPersona(nombre, edad) {
    return {
        nombre: nombre,
        edad: edad
    };
}

let persona = crearPersona("María", 25);
console.log(persona.nombre); // Salida: María

Retorno de funciones

JavaScript permite la creación de funciones de orden superior, que son funciones que pueden devolver otras funciones.

function crearSumador(x) {
    return function(y) {
        return x + y;
    };
}

let sumarCinco = crearSumador(5);
console.log(sumarCinco(3)); // Salida: 8

En este ejemplo, crearSumador devuelve una función que suma el valor x al argumento y.

Retorno implícito

En las funciones de flecha (arrow functions) de JavaScript, se puede hacer un retorno implícito.

Es decir, si la función consiste en una sola expresión, podemos omitir la palabra clave return.

const multiplicar = (a, b) => a * b;

let resultado = multiplicar(4, 5); // resultado será 20

Funciones sin return

Si una función no devuelve explícitamente un valor utilizando return, o si se llega al final de la función sin un retorno, se devuelve automáticamente undefined.

function hacerNada() {
    // No hay un retorno explícito
}

let resultado = hacerNada(); // resultado será undefined

Ejemplos prácticos

Vamos a ver unos ejemplos prácticos que ilustran cómo utilizar los retornos en situaciones reales (o algo más reales)