mirror of
https://github.com/ruanyf/es6tutorial.git
synced 2025-05-29 05:42:20 +00:00
docs(generator): edit style
This commit is contained in:
parent
ff4778487c
commit
584d5d9332
@ -667,7 +667,7 @@ log(g());
|
||||
|
||||
## Generator.prototype.return()
|
||||
|
||||
Generator 函数返回的遍历器对象,还有一个`return`方法,可以返回给定的值,并且终结遍历 Generator 函数。
|
||||
Generator 函数返回的遍历器对象,还有一个`return()`方法,可以返回给定的值,并且终结遍历 Generator 函数。
|
||||
|
||||
```javascript
|
||||
function* gen() {
|
||||
@ -683,9 +683,9 @@ g.return('foo') // { value: "foo", done: true }
|
||||
g.next() // { value: undefined, done: true }
|
||||
```
|
||||
|
||||
上面代码中,遍历器对象`g`调用`return`方法后,返回值的`value`属性就是`return`方法的参数`foo`。并且,Generator 函数的遍历就终止了,返回值的`done`属性为`true`,以后再调用`next`方法,`done`属性总是返回`true`。
|
||||
上面代码中,遍历器对象`g`调用`return()`方法后,返回值的`value`属性就是`return()`方法的参数`foo`。并且,Generator 函数的遍历就终止了,返回值的`done`属性为`true`,以后再调用`next()`方法,`done`属性总是返回`true`。
|
||||
|
||||
如果`return`方法调用时,不提供参数,则返回值的`value`属性为`undefined`。
|
||||
如果`return()`方法调用时,不提供参数,则返回值的`value`属性为`undefined`。
|
||||
|
||||
```javascript
|
||||
function* gen() {
|
||||
@ -700,7 +700,7 @@ g.next() // { value: 1, done: false }
|
||||
g.return() // { value: undefined, done: true }
|
||||
```
|
||||
|
||||
如果 Generator 函数内部有`try...finally`代码块,且正在执行`try`代码块,那么`return`方法会导致立刻进入`finally`代码块,执行完以后,整个函数才会结束。
|
||||
如果 Generator 函数内部有`try...finally`代码块,且正在执行`try`代码块,那么`return()`方法会导致立刻进入`finally`代码块,执行完以后,整个函数才会结束。
|
||||
|
||||
```javascript
|
||||
function* numbers () {
|
||||
|
Loading…
x
Reference in New Issue
Block a user