⊗jsPmFNFAP 242 of 505 menu

Funktsioonide edastamine parameetritena JavaScriptis

Funktsioone, sarnaselt numbritele, stringidele ja massiividele, saab edastada parameetritena teistesse funktsioonidesse.

Vaatleme lähemalt praktilisel näitel. Oletame, et meil on funktsioon test, mis võtab kaks parameetrit:

test(parameeter1, parameeter2);

Edastame funktsiooni test esimesse parameetrisse anonüümse funktsiooni, mis tagastab 1, ja teise parameetrisse - anonüümse funktsiooni, mis tagastab 2:

test( function() {return 1;}, function() {return 2;} );

Ülaltoodud kood ei ole veel töötav, kuna me ei ole loonud funktsiooni ennast. Teeme selle:

function test(func1, func2) { }

Funktsiooni defineerimisel määrasime kaks parameetrit - func1 ja func2. Need parameetrid ei tea midagi sellest, mis neisse edastatakse. Võime näiteks edastada numbreid:

test(1, 2); // kutsume funktsiooni välja function test(func1, func2) { console.log(func1); // väljastab 1 console.log(func2); // väljastab 2 }

Võime aga edastada funktsioone:

test( function() {return 1;}, // esimene parameeter function() {return 2;} // teine parameeter ); function test(func1, func2) { console.log(func1); // väljastab 'function() {return 1;}' console.log(func2); // väljastab 'function() {return 2;}' }

Nagu näete, väljastab konsooli nüüd funktsioonide lähtekood. Teeme nii, et see väljastaks nende tulemused. Selleks kirjutame funktsioonidele ümarsulud:

test( function() {return 1;}, function() {return 2;} ); function test(func1, func2) { console.log( func1() ); // väljastab 1 console.log( func2() ); // väljastab 2 }

Väljastame konsooli esimese ja teise funktsiooni tulemuste summa:

test( function() {return 1;}, function() {return 2;} ); function test(func1, func2) { console.log( func1() + func2() ); // väljastab 3 }

Tehke funktsioon test, mis võtab parameetritena 3 funktsiooni. Edastage sellele esimese parameetrina funktsioon, mis tagastab 1, teise - funktsioon, mis tagastab 2, kolmanda - funktsioon, mis tagastab 3. Väljastage konsooli funktsioonide tulemuste summa.

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