前几天,我读到一种特殊类型的回调,当您反复调用它时,它会随着您的进行而发展。就像它在第一次调用A并返回时一样,然后在下次调用B时执行。最终,它以某种方式表明已经采取了最终措施。

我不记得它叫什么了,在我的历史中也找不到它,所以我不知道要搜索什么。我需要帮助。

最佳答案

我认为您可能正在寻找的是generator functions。它已由ES6引入。


  调用生成器函数不会立即执行其主体。而是返回该函数的迭代器对象。调用迭代器的next()方法时,将执行生成器函数的主体,直到第一个yield表达式为止,该表达式指定要从迭代器返回的值


请参见MDN documentation

例:

function* idMaker() {
  var index = 0;
  while (index < 3)
    yield index++;
}

var gen = idMaker();

console.log(gen.next().value); // 0
console.log(gen.next().value); // 1
console.log(gen.next().value); // 2
console.log(gen.next().value); // undefined

关于javascript - 渐进式(或迭代式)回调,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42858520/

10-09 17:52
查看更多