- Day 19 - Closure - Esercizi - Esercizi: Livello 1 - Esercizi: Livello 2 - Esercizi: Livello 3
Day 19
Closure
JavaScript consente di scrivere una funzione all'interno di una funzione esterna. Possiamo scrivere tutte le funzioni interne che vogliamo. Se la funzione interna accede alle variabili della funzione esterna, si parla di chiusura.
function outerFunction() {
let count = 0;
function innerFunction() {
count++
return count
}
return innerFunction
}
const innerFunc = outerFunction()
console.log(innerFunc())
console.log(innerFunc())
console.log(innerFunc())
Vediamo altri esempi di funzioni interne
function outerFunction() {
let count = 0;
function plusOne() {
count++
return count
}
function minusOne() {
count--
return count
}
return {
plusOne:plusOne(),
minusOne:minusOne()
}
}
const innerFuncs = outerFunction()
console.log(innerFuncs.plusOne)
console.log(innerFuncs.minusOne)
๐ State facendo progressi. Mantenete lo slancio, continuate a lavorare bene. Ora fate qualche esercizio per il cervello e per i muscoli.
Esercizi
Esercizi: Livello 1
- Creare una chiusura che abbia una funzione interna
Esercizi: Livello 2
- Creare una chiusura con tre funzioni interne
Esercizi: Livello 3
- Creare una funzione esterna PersonAccount. Ha le variabili interne nome, cognome, reddito e spese. Ha le funzioni interne totalIncome, totalExpense, accountInfo, addIncome, addExpense e accountBalance. Entrate รจ un insieme di entrate e relativa descrizione e spese รจ un insieme di spese e relativa descrizione.
๐ CONGRATULAZIONI ! ๐