Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
7
respuestas

Las funciones son objetos de primera clase

Otra forma de almacenar las funciones es a través de un función anónima almacenada en una constante o variable, por ejemplo

const miFuncion = (...args)=>{
    //some code
    miProcedimiento1()
    return miRespuesta1
}
7 respuestas
solución!

Hola Piero , espero que esté bien.

Gracias por tu aporte, es bueno ver los diferentes puntos de vistas, eso enriquece nuestros conocimientos.

Si tienes alguna pregunta sobre el contenido de los cursos, estaremos aquí para ayudarte.

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios

podrias crear un ejemplo mas detallado, esta muy interesante.

Buen día piero esa function que tienes declarada la cual contiene un parametro con tres puntos es tambien llamada Spread Operator(...nombre del parametro) esto siginifica ejecuta todo lo que contenga dentro de esta function y es muy utilizado para los array y objetos

Así es Milfer, justamente por eso lo use para no poner (arg1, arg2, arg3)

Claro Cesar, a ver un ejemplo

function adicion2numeros (numero1, numero2) {
    return numero1 + numero2
}

es "lo mismo" que

const adicion2numeros = (numero1, numero2)=>{
    return numero1 + numero2
}

Okay, algo se cuece si han puesto lo mismo en comillas, no?

Y es que en realidad ambas formas declaran la función, hay una diferencia, la primera es hoisted first y la segunda de acuerdo a la línea donde se declaro.

Es decir, cuando usamos la palabra reservada function, el runtime de JS decide que todo lo que tenga function se almacenará en la memoria primero aunque esté declaro en la linea 800 de tu documento. Pero la segunda forma no, se almacenara cunado llegue a la linea 800 todavía

Al ser parte de los parámetros que pide la función, el "...args" es un rest parameter, cierto? Por ejemplo, si tenemos:

function myFunction(i, j, ...theArgs){
    console.log(i)
    console.log(j)
    console.log(theArgs)
}

myFunction(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)

Imprimiría algo como

1
2
[3, 4, 5, 6, 7, 8, 9, 10]

Muy bien explicado, me ayudo mucho, gracias Piero.