Yinelemeler

Döngüleyiciler, aşağıdaki durumlarda bir nesne listesinde gezinmek için kullanılan yaygın bir programlama modelidir:

  • Listenin boyutu başlangıçtan itibaren bilinmeyebilir.
  • Listenin tamamını tek seferde belleğe yüklemek çok fazla kaynak gerektirebilir.

Yinelemeler iki yöntem sunar: boolean hasNext() ve Object next(). Google Ads komut dosyaları, Google Ads varlıklarını getirmek için İterator kalıbını kullanır.

İşlevsel olarak yinelemeler, normal dizilerden çok farklı değildir ve kodunuzu daha kısa ve öz hale getirebilir. Bir diziyi gezen kodu karşılaştırın:

for (var i = 0; i < myArray.length; i++) {
  let myObject = myArray[i];
}

bir iteratörde gezinen kodla:

while (myIterator.hasNext()) {
  let myObject = myIterator.next();
}

Aşağıdaki kodda, hesabınızdaki tüm kampanyalar için bir iteratör kullanımı gösterilmektedir:

var campaignIterator = AdsApp.campaigns().get();

while (campaignIterator.hasNext()) {
  let campaign = campaignIterator.next();
  console.log(`${campaign.getName()}; active? ${campaign.isEnabled()}; ` +
      `budget=${campaign.getBudget().getAmount()}`);
}

Yerleşik JavaScript iterasyonunu da kullanabilirsiniz:

for (const campaign of AdsApp.campaigns()) {
  console.log(`${campaign.getName()}; active? ${campaign.isEnabled()}; ` +
      `budget=${campaign.getBudget().getAmount()}`);
}

withLimit()'ün bir seçiciye uygulanması totalNumEntities() değerini değiştirmez. Aşağıdaki snippet'te x ve y aynı değere sahip olacaktır:

var x = AdsApp.keywords().get().totalNumEntities();
var y = AdsApp.keywords().withLimit(5).get().totalNumEntities();

Google Ads öğelerinin iteratörünü almak için önce bir seçici oluşturmanız gerekir.