mirror of
https://github.com/ruanyf/es6tutorial.git
synced 2025-05-24 18:32:22 +00:00
docs(generator): fix #910
This commit is contained in:
parent
95352fdf11
commit
22665e7efc
@ -700,7 +700,7 @@ g.next() // { value: 1, done: false }
|
|||||||
g.return() // { value: undefined, done: true }
|
g.return() // { value: undefined, done: true }
|
||||||
```
|
```
|
||||||
|
|
||||||
如果 Generator 函数内部有`try...finally`代码块,且正在执行`try`代码块,那么`return`方法会推迟到`finally`代码块执行完再执行。
|
如果 Generator 函数内部有`try...finally`代码块,且正在执行`try`代码块,那么`return`方法会导致立刻进入`finally`代码块,执行完以后,整个函数才会结束。
|
||||||
|
|
||||||
```javascript
|
```javascript
|
||||||
function* numbers () {
|
function* numbers () {
|
||||||
@ -722,7 +722,7 @@ g.next() // { value: 5, done: false }
|
|||||||
g.next() // { value: 7, done: true }
|
g.next() // { value: 7, done: true }
|
||||||
```
|
```
|
||||||
|
|
||||||
上面代码中,调用`return`方法后,就开始执行`finally`代码块,然后等到`finally`代码块执行完,再执行`return`方法。
|
上面代码中,调用`return()`方法后,就开始执行`finally`代码块,不执行`try`里面剩下的代码了,然后等到`finally`代码块执行完,再返回`return()`方法指定的返回值。
|
||||||
|
|
||||||
## next()、throw()、return() 的共同点
|
## next()、throw()、return() 的共同点
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user