Sobes.tech
Middle

JavaScriptтеги генераторлор адаттагы функциялардан кантип иштейт?

sobes.tech AI

AIден жооп

JavaScriptтеги генераторлор — бул yield ачкыч сөзү аркылуу токтотуп, аралыктары маанилерди кайтара алган функциялар. Адистер функциялардан айырмаланып, толук ишке ашырылып, бир гана маанини кайтарганга караганда, генераторлор ленив түрдө маанилерди жараткан iteratorлерди түзүүгө мүмкүндүк берет.

Генератордун мисалы:

function* countUpTo(max) {
  let count = 1;
  while (count <= max) {
    yield count; // ишти токтотуп, маанини кайтарат
    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

Ошентип, генераторлор маалыматтардын тизмектери менен иштөөдө пайдалуу, анткени аларды толук эсептөө керек эмес.