⊗jsPmROInr 294 of 505 menu

Rest-operaattori JavaScriptissä

Aloitamme tämän oppitunnin selityksellä. Kaikissa edellisissä tämän osion oppitunneissa en kertonut teille koko totuutta operaattorista ...

Itse asiassa tämä operaattori voi riippuen paikasta koodissa olla joko spread-operaattori tai rest-operaattori.

Kuten jo tiedät, kun spread-operaattori esiintyy taulukon tai merkkijonon edessä, se jakaa ne erillisiksi arvoiksi. Rest-operaattorilla, vaikka sillä on sama syntaksi ..., on eri tarkoitus.

Selvitämme nyt, mihin. Oletetaan että meillä on funktio, joka ottaa vastaan kaksi parametria:

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

Sinun pitäisi jo tietää, että jos funktiolle annetaan ylimääräisiä parametreja, se ei aiheuta virhettä:

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

Rest-operaattori mahdollistaa kaikkien ylimääräisten parametrien saamisen taulukkona. Tätä varten funktioon lisätään vielä yksi parametri (välttämättä viimeiseksi), jonka edessä kirjoitetaan 3 pistettä:

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

Nämä kolme pistettä ovat rest-operaattori, ja muuttujan nimi voi olla mikä tahansa, mutta yleensä on tapana kutsua sitä myös rest:ksi.

Kutsukaamme funktiotamme ylimääräisellä määrällä parametreja ja katsotaan, mikä päätyy parametreihin a ja b, ja mikä - jäämään rest:iin:

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

Jos ylimääräisiä parametreja ei ole, muuttujaan rest tallennetaan tyhjä taulukko:

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

Funktiossa ei välttämättä tarvitse olla lainkaan parametreja, mutta siltiin siihen voidaan lisätä rest. Tässä tapauksessa funktiota voidaan kutsua millä tahansa määrällä parametreja ja ne kaikki päätyvät taulukkoon rest:

function func(...rest) { console.log(rest); }
Suomi
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Käytämme evästeitä verkkosivuston toiminnalle, analytiikalle ja personoinnille. Tietojen käsittely tapahtuu Tietosuojakäytännön mukaisesti.
hyväksy kaikki mukauta hylkää