CodeBlanks Logo Icon CodeBlanks

Özet - Parametreler

JavaScript kursu · Başlangıç · Ders 87/133

Varsayılan ve rest parametreleri kullanarak esnek bir sipariş özeti fonksiyonu yazarsın.

Özet - Parametreler

Bu grupta fonksiyon parametrelerinin esnek kullanımını öğrendin. Varsayılan parametre ile eksik argümanda bir değer atarsın; rest parametresi ile sınırsız argümanı dizi olarak toplarsın. Eski arguments nesnesini tanıdın ve neden rest yerine tercih edilmediğini gördün.

Ayrıca bir fonksiyonun dizi veya nesne döndürerek birden fazla değer verebileceğini ve büyük problemleri küçük yardımcı fonksiyonlara bölmenin okunaklı kod yazdırdığını öğrendin. Şimdi tüm bunları bir sipariş özeti fonksiyonunda birleştireceksin.

Uygulama Sipariş özeti fonksiyonu

orderSummary adında bir fonksiyon tanımla. unitPrice = 10 varsayılan parametresi ve ...quantities rest parametresi alsın. Gövdede let total = 0 başlat, for (let q of quantities) döngüsüyle her miktarı total += q * unitPrice şeklinde ekle. Sonra return total ile özeti döndür.

Örnek çözümü göster
function orderSummary(unitPrice = 10, ...quantities) {
  let total = 0;
  for (let q of quantities) {
    total += q * unitPrice;
  }
  return total;
}

Uygulama Sipariş özetini çağır

Aşağıdaki orderSummary fonksiyonu tanımlıdır. Şimdi onu çağır ve sonuçları yazdır. Önce console.log(orderSummary(undefined, 2, 3, 5)) ile varsayılan fiyatı kullan; undefined ilk argüman varsayılan değeri devreye sokar. Sonra console.log(orderSummary(20, 1, 1, 1, 1)) ile özel fiyatı kullan.

Örnek çözümü göster
function orderSummary(unitPrice = 10, ...quantities) {
  let total = 0;
  for (let q of quantities) {
    total += q * unitPrice;
  }
  return total;
}

console.log(orderSummary(undefined, 2, 3, 5));
console.log(orderSummary(20, 1, 1, 1, 1));

Kendini test et

  1. Hangisi rest parametre yazımıdır?

    • function sum(...nums)
    • function sum(nums[])
    • function sum(...nums[])
    • function sum(*nums)
    Cevabı göster

    function sum(...nums) — Doğru. ...nums rest parametresidir ve tüm argümanları dizi yapar.

  2. Kavramları eşleştir

    name = "Misafir"
    Varsayılan parametre
    ...nums
    Rest parametre
    arguments[0]
    Eski nesne
    return [a, b]
    Dizi döndürür

Başlangıç bölümündeki tüm dersler