throw在js生成器中的使用方法

本篇内容介绍了“throw在js生成器中的使用方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

说明

1、生成器函数的外部可以向throw方法传达参数,该参数被catch语句捕获。

2、不传达参数,catch语句捕获为undefined,catch语句捕获后恢复生成器的执行,具有IteratorResult。

实例

const caughtInsideCounter = (function* () {
  let c = 0;
  while (true) {
    try {
      yield ++c;
    } catch (e) {
      console.log(e);
    }
  }
})();
 
caughtInsideCounter.next();    // { value: 1, done: false}
caughtIndedeCounter.throw(new Error('An error occurred!'));
// 输出 An error occurred!
// { value: 2, done: false }

“throw在js生成器中的使用方法”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!