Closure scope
Ejemplos:
function outerFunction() {
let isEnabled = true;
function getStatus() {
console.log(isEnabled);
}
getStatus(); // imprime true
isEnabled = false;
getStatus(); // imprime false
}
outerFunction();function animal(type) {
let id = 0;
return (name) => {
id += 1;
return {
id,
type,
name
};
};
}
const createDog = animal('dog');
const createCat = animal('cat');
const scott = createDog('Scott');
const firulais = createDog('Firulais');
const fifi = createCat('Fifi');
console.log(scott); // { id: 1, type: 'dog', name: 'Scott' }
console.log(firulais); // { id: 2, type: 'dog', name: 'Firulais' }
console.log(fifi); // { id: 1, type: 'cat', name: 'Fifi' }Last updated