Esta extraña palabra es la diferencia entre que tu código funcione y que no. ¿Pero qué rayos hace ️🌩️? ¡Veamoslo!
(Si ya entiendes esta idea, obviamente salta a la siguiente sección.)
Tomaré esta grandiosa explicación: una función es una máquina a la que le metemos cosas y que nos saca otra cosa (una sola).
Por ejemplo, podemos tener la máquina (la función) SUMAR
, a la que le metemos dos números (num_1
y num_2
) y nos saca otro número (num_3
):
Pues bien, el return
determina ese valor que saca la función (num_3
en este caso).
La función que acabamos de observar se vería así en JavaScript:
functionsumar(num_1, num_2) {
let num_3 = num_1 + num_2;
return num_3;
}
function
.sumar
.num_1
y num_2
) es lo que va entre paréntesis, los llamados PARÁMETROS DE LA FUNCIÓN.{
(mira mi tutorial sobre corchetes y bloques de código si te confunde esto)num_3
, que es, la suma de num_1
con num_2
).return
. Este es el proceso de sacarla de la función. El equivalente a la última flechita en la imagen de antes.Lo corremos y… nada 😭.
¿Qué ha pasado?
Seguramente experimentarás los siguientes errores montones de veces, así que observa.
functionsumar(num_1, num_2) {
let num_3 = num_1 + num_2;
return num_3;
}
sumar(2, 3);
Ahora sí, funciona. La gracia de que sumar
retorne algo (es decir, que nos saque algo) es utilizar lo que nos saque. Así que podemos hacer eso sin problemas:
functionsumar(num_1, num_2) {
let num_3 = num_1 + num_2;
return num_3;
}
let resultado = sumar(2, 3);
¡Y ahí lo tenemos 🥳! Si vemos el valor de resultado
debería ser 5
, lo cual podemos comprobar con alert
o con console.log
.
Es súper común que te pase esto al principio. Tras exprimir tu cerebro has dado con una función maravillosa, pero se te ha olvidado poner el return
:
functionsumar(num_1, num_2) {
let num_3 = num_1 + num_2;
}
let resultado = sumar(2, 3);
En este caso, sumar
no saca nada, entonces ¿qué se le asigna a resultado
? Pues bien, se le asigna undefined
. Es un valor con el que te familiarizarás bastante 😜.
Como último apunte, recuerda que una función no tiene que retornar nada, por ejemplo esta:
functionsaludar(nombre, edad){
alert("Felicidades " + nombre + " hoy cumples " + edad + " años.");
}
Te felicita por tu cumpleaños diciéndote tu edad y no es necesario retornar nada.
¡Esto ha sido todo, chau!
como podria hacer que la persona elija los datos de sumar como que en ves de 2 y 3 yo elija cuales numeros quiero sumar. como seria el codigo