⊗jsPmROInr 294 of 505 menu

Rest operaator JavaScriptis

Alustame seda õppetundi seletusega. Kõigis eelmistes õppetundides selles jaotises ma ei rääkinud teile kogu tõdest ... operaatori kohta.

Tegelikult võib see operaator sõltuvalt kohast koodis nimetada kas spread operaatoriks või rest operaatoriks.

Nagu te juba teate, kui spread operaator seisab massiivi või stringi ees, jagab see need üksikuteks väärtusteks. Rest operaator, kuigi sellel on sama süntaks kujul ..., on mõeldud millegi muu jaoks.

Vaatame nüüd, mille jaoks. Olgu meil funktsioon, mis võtab kaks parameetrit:

function func(a, b) { console.log(a); console.log(b); }

Te peaksite juba teadma, et kui funktsiooni edastada liigseid parameetreid, ei too see kaasa viga:

func(1, 2, 3, 4, 5);

Rest operaator võimaldab saada kõik liigsed parameetrid massiivi kujul. Selleks lisatakse funktsiooni veel üks parameeter (tingimata viimasena), mille ette kirjutatakse 3 punkti:

function func(a, b, ...rest) { }

Need kolm punkti ongi rest operaator, ja muutuja nimi võib olla suvaline, kuid tavaliselt nimetatakse seda ka rest-iks.

Kutsume oma funktsiooni liigse parameetrite arvuga ja vaatame, mis satub parameetritesse a ja b, ja mis - jääb rest-i:

func(1, 2, 3, 4, 5); function func(a, b, ...rest) { console.log(a); // väljastab 1 console.log(b); // väljastab 2 console.log(rest); // väljastab [3, 4, 5] }

Kui liigseid parameetreid ei ole, siis muutujasse rest kirjutatakse tühi massiiv:

func(1, 2); function func(a, b, ...rest) { console.log(a); // väljastab 1 console.log(b); // väljastab 2 console.log(rest); // väljastab [] }

Funktsioonil võib üldse mitte olla parameetreid, kuid sellele saab lisada rest. Sellisel juhul saab funktsiooni välja kutsuda suvalise arvu parameetritega ja kõik need satuvad massiivi rest:

function func(...rest) { console.log(rest); }
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