Array met anonieme functies in JavaScript
Ik heb eerder al genoemd dat functies in JavaScript zich gedragen alsof het strings of getallen zijn. In het bijzonder, kun je een array maken die uit functies bestaat. Laten we dat doen:
let arr = [
function() {console.log('1')},
function() {console.log('2')},
function() {console.log('3')},
];
Laten we bijvoorbeeld de inhoud van het nulde element van de array in de console uitvoeren:
let arr = [
function() {console.log('1')},
function() {console.log('2')},
function() {console.log('3')},
];
console.log(arr[0]); // zien de broncode van de eerste functie
Zoals je in het voorbeeld hierboven ziet, krijgen we de broncode van de functie, niet het resultaat.
Om de functie aan te roepen, moet je
ronde haakjes toevoegen. Omdat onze functie
is opgeslagen in arr[0], moeten de ronde haakjes
na de vierkante haakjes worden geschreven, zoals
volgt: arr[0](). Laten we het testen:
let arr = [
function() {console.log('1')},
function() {console.log('2')},
function() {console.log('3')},
];
arr[0](); // geeft '1' weer
Je kunt onze array met functies ook doorlopen met een lus en in deze lus elke functie aanroepen:
let arr = [
function() {console.log('1')},
function() {console.log('2')},
function() {console.log('3')},
];
for (let func of arr) {
func(); // roept onze functies aan in de lus
}
Maak een array arr met drie functies.
Laat de eerste via return
het getal 1 teruggeven, de tweede - getal 2,
de derde - getal 3.
Gebruik de door jou gemaakte array arr
en toon getal 3 in de console, door
de bijbehorende functie aan te roepen.
Vind de som van de resultaten van de functies
(zonder lus) met behulp van de door jou gemaakte array arr.
Doorloop de door jou gemaakte array arr
met een lus en toon de resultaten van alle
functies in de console.