⊗jsPmROInr 294 of 505 menu

Rest operateur in JavaScript

Ons sal hierdie les begin met 'n sekere verduideliking. Al die vorige lesse in hierdie afdeling het ek nie die hele waarheid oor die ... operateur aan julle gesê nie.

Eintlik kan hierdie operateur, afhangende van die plek in die kode, óf die spread operateur, óf die rest operateur genoem word.

Soos jy reeds weet, wanneer die spread operateur voor 'n array of string staan, verdeel dit dit in afsonderlike waardes. Die rest operateur, alhoewel dit dieselfde sintaksis het in die vorm van ..., is vir iets anders bedoel.

Kom ons kyk nou waarvoor. Laat ons aanneem ons het 'n funksie wat twee parameters aanvaar:

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

Jy moet reeds weet dat as ekstra parameters aan die funksie oorgedra word, sal dit nie tot 'n fout lei nie:

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

Die rest operateur laat toe om al die oortollige parameters as 'n array te verkry. Vir hierdie word nog 'n parameter by die funksie gevoeg (verpligtend laaste), waarvoor 3 kolle geskryf word:

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

Hierdie drie kolle is presies die rest operateur, en die naam van die veranderlike kan enige naam hê, maar word gewoonlik ook rest genoem.

Kom ons roep ons funksie met 'n oortollige aantal parameters en kyk wat beland in die parameters a en b, en wat - in die res rest:

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

As daar geen ekstra parameters is nie, sal 'n leë array in die veranderlike rest geskryf word:

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

Die funksie kan glad geen parameters hê nie, maar tog kan rest daaraan toegevoeg word. In hierdie geval kan die funksie geroep word met enige aantal parameters en almal sal in die array rest beland:

function func(...rest) { console.log(rest); }
Afrikaans
AzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ons gebruik koekies vir die werking van die webwerf, ontleding en personalisering. Die verwerking van data geskied volgens die Privaatheidsbeleid.
aanvaar alles instel verwerp