⊗jsPmROInr 294 of 505 menu

De rest operator in JavaScript

Laten we deze les beginnen met een korte uitleg. In alle voorgaande lessen van deze sectie heb ik niet de volledige waarheid verteld over de operator ...

In werkelijkheid kan deze operator, afhankelijk van zijn positie in de code, ofwel de spread operator ofwel de rest operator worden genoemd.

Zoals je al weet, wanneer de spread operator voor een array of string staat, splitst hij deze op in afzonderlijke waarden. De rest operator, hoewel hij dezelfde syntaxis heeft in de vorm van ..., is bedoeld voor iets anders.

Laten we nu uitzoeken waarvoor. Stel we hebben een functie die twee parameters accepteert:

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

Je zou al moeten weten dat als je extra parameters doorgeeft aan de functie, dit niet tot een fout leidt:

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

De rest operator maakt het mogelijk om alle extra parameters te ontvangen in de vorm van een array. Hiervoor wordt er nog een parameter aan de functie toegevoegd (verplicht als laatste), waarvoor 3 punten worden geschreven:

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

Deze drie punten zijn de rest operator, en de naam van de variabele kan elke willekeurige naam hebben, maar meestal is het gebruikelijk om hem ook rest te noemen.

Laten we onze functie aanroepen met een overvloed aan parameters en kijken wat er in de parameters a en b terechtkomt, en wat - in de rest rest:

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

Als er geen extra parameters zijn, dan wordt in de variabele rest een lege array geschreven:

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

De functie kan zelfs helemaal geen parameters hebben, maar toch kan men rest toevoegen. In dit geval kan de functie worden aangeroepen met elk aantal parameters en ze zullen allemaal in de array rest terechtkomen:

function func(...rest) { console.log(rest); }
Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren