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ıçta bilinmeyebilir.
  • Listenin tamamını tek seferde belleğe yüklemek çok fazla kaynak gerektirebilir.

Döngüleyiciler iki yöntem sunar: boolean hasNext() ve Object next(). Google Ads komut dosyaları, Google Ads öğelerini almak için Iterator kalıbını kullanır.

İşlevsel olarak iteratörlerin normal dizilerden çok farkı yoktur ve kodunuzu daha kısa hale getirebilirler. 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.