⊗jsPmFTAFA 239 of 505 menu

Array med anonyma funktioner i JavaScript

Jag har nämnt tidigare att funktioner i JavaScript beter sig som strängar eller siffror. Specifikt kan man skapa en array som består av funktioner. Låt oss skapa en:

let arr = [ function() {console.log('1')}, function() {console.log('2')}, function() {console.log('3')}, ];

Låt oss till exempel skriva ut innehållet i det nollte elementet i arrayen till konsolen:

let arr = [ function() {console.log('1')}, function() {console.log('2')}, function() {console.log('3')}, ]; console.log(arr[0]); // kommer att se källkoden för den första funktionen

Som du ser i exemplet ovan får vi funktionens källkod, inte resultatet.

För att funktionen ska anropas måste man lägga till parenteser efter den. Eftersom vår funktion lagras i arr[0] måste parenteserna skrivas efter hakparenteserna, så här: arr[0](). Låt oss prova:

let arr = [ function() {console.log('1')}, function() {console.log('2')}, function() {console.log('3')}, ]; arr[0](); // skriver ut '1'

Man kan också gå igenom vår array med funktioner med en loop och i den loopen anropa varje funktion:

let arr = [ function() {console.log('1')}, function() {console.log('2')}, function() {console.log('3')}, ]; for (let func of arr) { func(); // anropar våra funktioner i loopen }

Skapa en array arr med tre funktioner. Låt den första returnera (via return) talet 1, den andra - talet 2, den tredje - talet 3.

Använd den array arr som du skapade och skriv ut talet 3 till konsolen genom att anropa motsvarande funktion.

Använd den array arr som du skapade och hitta summan av funktionernas resultat (utan loop).

Gå igenom den array arr som du skapade med en loop och skriv ut resultaten från alla funktioner i konsolen.

Svenska
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi använder kakor för webbplatsens funktion, analys och personalisering. Behandling av data sker i enlighet med Integritetspolicyn.
acceptera alla anpassa avvisa