js yield 命令
时间: 2023-10-23 13:14:44 浏览: 179
yield 命令是 JavaScript 中用于定义生成器函数的关键字。生成器函数是一种特殊的函数,可以通过迭代的方式生成一系列的值。
使用 yield 关键字可以在生成器函数内部暂停函数的执行,并将一个值返回给调用者。每次调用生成器函数的 next() 方法时,函数会从上一次暂停的地方继续执行,直到遇到下一个 yield 关键字或者函数结束。
以下是一个简单的示例:
```javascript
function* generatorFunction() {
yield 1;
yield 2;
yield 3;
}
const generator = generatorFunction();
console.log(generator.next()); // { value: 1, done: false }
console.log(generator.next()); // { value: 2, done: false }
console.log(generator.next()); // { value: 3, done: false }
console.log(generator.next()); // { value: undefined, done: true }
```
在上面的示例中,generatorFunction 是一个生成器函数,通过调用 next() 方法来逐步获取生成的值。每次调用 next() 方法时,生成器函数会从上一次暂停的地方继续执行,并返回一个包含当前值和是否已完成的对象。
yield 在 JavaScript 中也可以用于解构赋值和作为表达式使用,但这里的讨论主要集中在生成器函数中使用 yield 的情况。
阅读全文