Iterator adalah pola pemrograman umum yang digunakan untuk melintasi daftar objek saat
- Ukuran daftar mungkin tidak diketahui sejak awal.
- Memuat seluruh daftar ke dalam memori sekaligus dapat terbukti terlalu intensif menggunakan resource.
Iterator mengekspos dua metode: boolean hasNext()
dan Object next()
.
Skrip Google Ads menggunakan pola Iterator untuk mengambil entitas Google Ads.
Secara fungsional, iterator tidak terlalu berbeda dari array biasa, dan dapat membuat kode Anda lebih ringkas. Bandingkan kode yang melintasi array:
for (var i = 0; i < myArray.length; i++) {
let myObject = myArray[i];
}
dengan kode yang melintasi iterator:
while (myIterator.hasNext()) {
let myObject = myIterator.next();
}
Kode berikut menunjukkan penggunaan iterator di semua kampanye Penelusuran dan Display di akun Anda:
var campaignIterator = AdsApp.campaigns().get();
while (campaignIterator.hasNext()) {
let campaign = campaignIterator.next();
console.log(`${campaign.getName()}; active? ${campaign.isEnabled()}; ` +
`budget=${campaign.getBudget().getAmount()}`);
}
Anda juga dapat menggunakan iterasi JavaScript bawaan:
for (const campaign of AdsApp.campaigns()) {
console.log(`${campaign.getName()}; active? ${campaign.isEnabled()}; ` +
`budget=${campaign.getBudget().getAmount()}`);
}
Penerapan withLimit()
ke pemilih tidak mengubah nilai
totalNumEntities()
. x
dan y
dalam cuplikan berikut akan memiliki
nilai yang sama:
var x = AdsApp.keywords().get().totalNumEntities();
var y = AdsApp.keywords().withLimit(5).get().totalNumEntities();
Untuk mendapatkan Iterator entitas Google Ads, Anda harus membuat Selector terlebih dahulu.