Unazat në Gjeneratorët në JavaScript

Brenda gjeneratorëve mund të përdoren unaza. Në këtë rast ne mund t'i vendosim unazat në pauzë duke përdorur yield. Le të shohim një shembull. Do ta vendosim unazën në pauzë çdo përsëritje:

javascriptfunction *func() {
  for (let i = 1; i <= 3; i++) {
    yield i;
  }
}

Do të marrim një përsëritës:

javascriptlet iter = func();

Le të kontrollojmë funksionimin e përsëritësit tonë:

javascriptconsole.log(iter.next()); // {value: 1, done: false}
console.log(iter.next()); // {value: 2, done: false}
console.log(iter.next()); // {value: 3, done: false}
console.log(iter.next()); // {value: undefined, done: true}
Задание 1

Krijoni një përsëritës, çdo thirrje e të cilit do të kthejë numra nga 10 në zero.

Задание 2

Bëni një gjenerator, i cili si parametër do të pranojë një numër. Le të çdo thirrje e përsëritësit të zvogëlojë numrin me një, derisa të arrihet zero.

Задание 3

Bëni një gjenerator, i cili si parametër do të pranojë një numër. Le të çdo thirrje e përsëritësit të zvogëlojë numrin përgjysmë dhe të kthejë rezultatin. Dhe kështu, derisa numri të bëhet më i vogël se një.

Задание 4

Bëni një përsëritës, çdo thirrje e të cilit do të kthejë fuqinë tjetër të dy.

Задание 5

Bëni një përsëritës, çdo thirrje e të cilit do të kthejë numrin e ardhshëm të Fibonaçit.