diff --git a/docs/generator.md b/docs/generator.md index f2f76b2..7983d08 100644 --- a/docs/generator.md +++ b/docs/generator.md @@ -1318,21 +1318,23 @@ function* f(){ }; ``` -上面代码使用Promise的函数库Q,yield语句返回的就是一个Promise对象。 +上面代码使用Promise的函数库`Q`,`yield`语句返回的就是一个Promise对象。 -多个任务按顺序一个接一个执行时,yield语句可以按顺序排列。多个任务需要并列执行时(比如只有A任务和B任务都执行完,才能执行C任务),可以采用数组的写法。 +如果`yield`语句后面的参数,是一个具有遍历器接口的对象,`yield`会遍历这个对象,再往下执行。这意味着, + +多个任务按顺序一个接一个执行时,`yield`语句可以按顺序排列。多个任务需要并列执行时(比如只有A任务和B任务都执行完,才能执行C任务),可以采用数组的写法。 ```javascript -function* parallelDownloads() { - let [text1,text2] = yield [ +function* parallelTasks() { + let [resultA, resultB] = yield [ taskA(), taskB() ]; - console.log(text1, text2); + console.log(resultA, resultB); } ``` -上面代码中,yield语句的参数是一个数组,成员就是两个任务taskA和taskB,只有等这两个任务都完成了,才会接着执行下面的语句。 +上面代码中,`yield`语句的参数是一个数组,成员就是两个任务taskA和taskB,只有等这两个任务都完成了,才会接着执行下面的语句。 ### (3)部署iterator接口 diff --git a/docs/string.md b/docs/string.md index 685a53f..cb72cc1 100644 --- a/docs/string.md +++ b/docs/string.md @@ -354,18 +354,18 @@ ES7推出了字符串补全长度的功能。如果某个字符串不够指定 传统的JavaScript语言,输出模板通常是这样写的。 ```javascript -$("#result").append( - "There are " + basket.count + " " + - "items in your basket, " + - "" + basket.onSale + - " are on sale!" +$('#result').append( + 'There are ' + basket.count + ' ' + + 'items in your basket, ' + + '' + basket.onSale + + ' are on sale!' ); ``` 上面这种写法相当繁琐不方便,ES6引入了模板字符串解决这个问题。 ```javascript -$("#result").append(` +$('#result').append(` There are ${basket.count} items in your basket, ${basket.onSale} are on sale! @@ -390,7 +390,7 @@ var name = "Bob", time = "today"; `Hello ${name}, how are you ${time}?` ``` -上面代码中的字符串,都是用反引号表示。如果在模板字符串中需要使用反引号,则前面要用反斜杠转义。 +上面代码中的模板字符串,都是用反引号表示。如果在模板字符串中需要使用反引号,则前面要用反斜杠转义。 ```javascript var greeting = `\`Yo\` World!`; @@ -399,13 +399,26 @@ var greeting = `\`Yo\` World!`; 如果使用模板字符串表示多行字符串,所有的空格和缩进都会被保留在输出之中。 ```javascript -$("#warning").html(` -

Watch out!

-

Unauthorized hockeying can result in penalties - of up to ${maxPenalty} minutes.

+$('#list').html(` + `); ``` +上面代码中,所有模板字符串的空格和换行,都是被保留的,比如`