⊗jsPmFTAFA 239 of 505 menu

Massiiv anonüümsete funktsioonidega JavaScriptis

Ma olen juba varem maininud, et funktsioonid JavaScriptis käituvad nagu stringid või numbrid. Täpsemalt, saab teha massiivi, mis koosneb funktsioonidest. Teeme:

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

Väljendame näiteks konsooli nullindat elementi massiivist:

let arr = [ function() {console.log('1')}, function() {console.log('2')}, function() {console.log('3')}, ]; console.log(arr[0]); // näeme esimese funktsiooni lähtekoodi

Nagu näete, saame ülaltoodud näites funktsiooni lähtekoodi, mitte tulemust.

Et funktsiooni kutsumine toimuks, tuleb sellele lisada ümarsulud. Kuna meie funktsioon on salvestatud arr[0], siis tuleb ümarsulud kirjutada ruutsulude järele, niimoodi: arr[0](). Kontrollime:

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

Samuti saame meie massiivi funktsioonidega läbida tsükliga ja selles tsüklis kutsuda iga funktsiooni välja:

let arr = [ function() {console.log('1')}, function() {console.log('2')}, function() {console.log('3')}, ]; for (let func of arr) { func(); // kutsume meie funktsioone tsüklis välja }

Tehke massiiv arr kolme funktsiooniga. Olgu esimene tagastab läbi return numbri 1, teine - numbri 2, kolmas - numbri 3.

Kasutades loodud massiivi arr kuvage konsooli number 3, kutsudes vastavat funktsiooni.

Kasutades loodud massiivi arr leidke funktsioonide tulemuste summa (ilma tsüklita).

Käige loodud massiiv arr läbi tsükliga ja kuvage kõigi funktsioonide tulemused konsooli.

Eesti
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Me kasutame saidi toimimiseks, analüüsi ja personaliseerimiseks küpsiseid. Andmete töötlemine toimub vastavalt Privaatsuspoliitikale.
nõustu kõigega häälesta keeldu