Sobes.tech
Middle

Hogyan működnek a generátorok JavaScriptben a normál függvényekhez képest?

sobes.tech MI

Válasz az MI-től

A JavaScript generátorok olyan függvények, amelyek a yield kulcsszó segítségével megszakíthatják végrehajtásukat és közbenső értékeket adhatnak vissza. A hagyományos függvényekkel ellentétben, amelyek teljes egészében végrehajtódnak és egyetlen értéket adnak vissza, a generátorok lehetővé teszik a késleltetett értékekkel való iterátorok létrehozását.

Generátor példa:

function* countUpTo(max) {
  let count = 1;
  while (count <= max) {
    yield count; // végrehajtás megszakítása és érték visszaadása
    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

Ezért a generátorok hasznosak olyan adat-sorozatok kezelésére, amelyeket nem kell azonnal teljes egészében kiszámítani.