⊗jsPmROInr 294 of 505 menu

JavaScript'te Rest Operatörü

Bu derse bir açıklama ile başlayalım. Bu bölümün önceki tüm derslerinde size ... operatörü hakkında tüm gerçeği söylemedim.

Aslında bu operatör, kod içindeki yerine bağlı olarak ya spread operatörü ya da rest operatörü olarak adlandırılabilir.

Bildiğiniz gibi, spread operatörü bir dizi veya string'in önünde yer aldığında, onları ayrı değerlere böler. Rest operatörü ise, ... şeklinde aynı sözdizimine sahip olsa da, farklı bir amaç için kullanılır.

Şimdi ne için kullanıldığını anlayalım. İki parametre alan bir fonksiyonumuz olduğunu varsayalım:

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

Bir fonksiyona fazladan parametreler aktarılırsa, bunun bir hata oluşturmayacağını zaten biliyor olmalısınız:

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

Rest operatörü, tüm fazla parametreleri bir dizi olarak almanızı sağlar. Bunun için fonksiyona (mutlaka sona gelecek şekilde) bir parametre daha eklenir ve önüne 3 nokta konur:

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

Bu üç nokta, rest operatörüdür ve değişken adı herhangi bir şey olabilir, ancak genellikle rest olarak adlandırılır.

Şimdi fonksiyonumuzu fazla sayıda parametre ile çağıralım ve a ve b parametrelerine neyin girdiğine, neyin ise rest kısmına girdiğine bakalım:

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

Eğer fazla parametre olmazsa, rest değişkenine boş bir dizi yazılır:

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

Fonksiyonda hiç parametre olmayabilir, ancak yine de rest eklenebilir. Bu durumda fonksiyon herhangi bir sayıda parametre ile çağrılabilir ve tüm parametreler rest dizisine girer:

function func(...rest) { console.log(rest); }
Türkçe
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenЎзбекOʻzbekTiếng Việt
Web sitesinin çalışması, analiz ve kişiselleştirme için çerezleri kullanıyoruz. Veri işleme, Gizlilik Politikası'na uygun olarak gerçekleşir.
tümünü kabul et özelleştir reddet