Sobes.tech
Middle

JavaScript-də generatorlar adi funksiyalardan necə işləyir?

sobes.tech Süni İntellekt

AI-dan cavab

JavaScript-də generatorlar yield açar sözü ilə icrasını dayandıra bilən və aralıq dəyərlər qaytara bilən funksiyalardır. Adi funksiyalardan fərqli olaraq, bunlar tam şəkildə icra olunur və tək bir dəyər qaytarır, generatorlar isə ehtiyatla dəyərlər yaradan iteratorlar yaratmağa imkan verir.

Generator nümunəsi:

function* countUpTo(max) {
  let count = 1;
  while (count <= max) {
    yield count; // icrasını dayandırır və dəyəri qaytarır
    count++;
  }
}

const counter = countUpTo(3);
console.log(counter.next().value); // 1
console.log(counter.next().value); // 2
console.log(counter.next().value); // 3
console.log(counter.next().done);  // true

Beləliklə, generatorlar məlumat ardıcıllıqları ilə işləmək üçün əlverişlidir, çünki onlar tam hesablamanı tələb etmir.