function first() { console.log("first"); } function second() { console.log("second"); } first(second());Ahora, el problema es que cuando llamo ( primera función ), esto me da la ( segunda ) primera, solo quería saber qué está sucediendo exactamente aquí, ¿cómo funciona esto? y cómo el valor de la segunda función pasa dentro de la primera función ...? (porque no hay ningún parámetro dentro de la primera función)
Vamos a depurar su código paso a paso.
En primer lugar, se definen las dos funciones. Nada de malo con eso.
Luego, llamas a la primera función, first()
Javascript lee la línea y mira lo que hay dentro de los paréntesis para poder pasar el valor a la función.
Así que ahora, ve que llamaste a la segunda función, second() . Nuevamente, mira los parámetros que se pasan. No ve nada, por lo que no pasó nada. La función que definiste tampoco acepta nada, ¡así que funciona! Imprime "Second" primero. Pero hiciste que la función no devolviera nada. Entonces, es una función nula. Devuelve null .
En este momento, su código es first(null) porque second() es null . En Javascript, myFunction(null) es casi lo mismo que myFunction() , por lo que Javascript no pasa nada a la función, y sus funciones first() tampoco aceptan nada, y esto funciona, imprimiendo "First" en segundo lugar.
Javascript va de izquierda a derecha, pero por lo general, ejecuta comandos en el nido de corchetes más bajo y profundo para que pueda pasar los resultados de retorno al siguiente nivel de paréntesis.
.
Sugiero ver más videos de Javascript en línea y aprenderlos en w3schools o https://developer.mozilla.org/ ya que tienen excelentes ejemplos y estudios.