1. Hoisting
El hoisting significa que el compilador de JS, pone las declaraciones y las funciones en memoria primero, es decir, podemos llamar a una función incluso si su inicialización está después de la llamada.
Ojo, esto funciona para declaraciones y funciones, no inicializaciones de variables.
En el código debajo, podemos observar una función multiplicar y una variable sumar2. En el proceso de compilación, JS nota que existe una función y automáticamente la pone de primero en memoria. Y posteriormente ejecuta todos los demás bloques de código. Por lo cual, la llamada a la función multiplicar() puede ejecutarse antes o después de la inicialización de la función.
multiplicar(10,10); //Se ejecuta
function multiplicar(a,b){
//Se pone de primero en memoria
console.log(a*b);
}
//Expresion de la función
sumar2();
const sumar2 = function() {
console.log(3+3);
}
Hoisting en acción
/* Funciones y declaraciones de variables
Lo primero en asignar en memoria
*/
function multiplicar(a,b){
console.log(a*b);
}
const sumar2;
//Lo que se ejecuta después
multiplicar(10,10); //100
sumar2(); //Error
const sumar2 = function() {
console.log(3+3);
}
2. ForEach & Map
En que escenarios deberías usarlo.
Cuando necesites mostrar algo en consola y por HTML debes de hacerlo por foreach.
Cuando necesites crear un nuevo arreglo, con lo que quisieras
retornar debes de usar map.
3. Load & DOMContentLoaded
Load (Event)
Espera que el js, y los archivos que dependen del html estén completamente descargados para ejecutarse.
DOMContentLoaded
Únicamente espera que se instale el HTML puro, no le importa el js. Ni las imágenes, únicamente el esqueleto del sitio web.
¿Cuál usar?
Por lo general DOMContentLoaded, ya que no necesitamos que se carguen las hojas de estilo primero ni lo demás. Únicamente el HTML, así se ejecuta mas rápido el código JS.
Top comments (0)