Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions javascript/10/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,9 @@ function* gen(x) {

var g = gen(1);
g.next() // { value: 3, done: false }
g.next(2) // { value: 2, done: false }
g.next(2) // { value: 2, done: true }
```

`next` 是返回值的 `value` 属性,是 `Generator` 函数向外输出数据;`next` 方法还可以接受参数,向 `Generator` 函数体内输入数据。

上面代码中,第一个 `next` 方法的 `value` 属性,返回表达式 `x + 2` 的值 `3`。第二个 `next` 方法带有参数 `2`,这个参数可以传入 `Generator` 函数,作为 `上个阶段` 异步任务的返回结果,被函数体内的变量 `y` 接收。因此,这一步的 `value` 属性,返回的就是 `2`(变量 `y` 的值)。
上面代码中,第一个 `next` 方法的 `value` 属性,返回表达式 `x + 2` 的值 `3`。第二个 `next` 方法带有参数 `2`,这个参数可以传入 `Generator` 函数,作为 `上个阶段` 异步任务的返回结果,被函数体内的变量 `y` 接收。因此,这一步的 `value` 属性,返回的就是 `2`(变量 `y` 的值)。