Entenderemos el scope y los closures de JavaScript.
Aquí vamos a entender la particularidad de lo que implica trabajar con el alcance dentro de las variables, de nuestras funciones y de los bloques de código que estamos construyendo dentro de nuestras aplicaciones.
Esto significa que vamos a entender el scope global, el scope local y cómo implica trabajar con bloques o funciones dentro de este ámbito, así como también la importancia de los closures y lo que implica trabajar con ellas mismas.
Teniendo en cuenta estos elementos, vamos a tocar puntos como el hoisting, que nos va a permitir elevar declaraciones dentro de nuestro código y también entender cómo podemos hacer debugging como un profesional con la herramienta de Google Dev Tools que están disponibles en Google Chrome.
Scope: Es el alcance que va a tener una variable dentro del código. En otras palabras, el Scope se encargará de decidir a que bloques de código va a acceder una variable.
Para este curso crearemos una carpeta llamada src (estándar para guardar nuestros archivo) y dentro una subcarpeta llamada scope
Scope Global : No están dentro de funciones o bloques, por lo tanto se puede acceder a ellas de manera global:
var hello = 'Hello'
let world = 'Hello World'
const helloWorld = 'Hello World!'
console.log(hello);
Si llamamos a estas variables con una función, trabajará bien ya que son del scope global
var hello = 'Hello';
let world = 'Hello World';
const helloWorld = 'Hello World!';
const anotherFunction = () => {
console.log(hello)
console.log(world)
console.log(helloWorld)
}
anotherFunction();
/*Consola Output
Hello
Hello World
Hello World!
*/
var hello = 'Hello';
var hello = 'Hello +';
console.log(hello)
/*Consola Output
Hello +
*/
let hello = 'Hello';
let hello = 'Hello +';
console.log(hello);
/*Consola Output
ERROR.................
*/