1
0
mirror of https://github.com/ruanyf/es6tutorial.git synced 2025-05-24 18:32:22 +00:00

edit index.html

This commit is contained in:
ruanyf 2015-12-22 16:28:25 +08:00
parent 957dcd186e
commit 61d7165df9
3 changed files with 11 additions and 11 deletions

View File

@ -98,22 +98,22 @@ Promise 的最大问题是代码冗余原来的任务被Promise 包装了一
举例来说,读取文件的协程写法如下。 举例来说,读取文件的协程写法如下。
```javascript ```javascript
function asnycJob() { function *asnycJob() {
// ...其他代码 // ...其他代码
var f = yield readFile(fileA); var f = yield readFile(fileA);
// ...其他代码 // ...其他代码
} }
``` ```
上面代码的函数asyncJob是一个协程它的奥妙就在其中的yield命令。它表示执行到此处执行权将交给其他协程。也就是说yield命令是异步两个阶段的分界线。 上面代码的函数`asyncJob`是一个协程,它的奥妙就在其中的`yield`命令。它表示执行到此处,执行权将交给其他协程。也就是说,`yield`命令是异步两个阶段的分界线。
协程遇到 yield 命令就暂停等到执行权返回再从暂停的地方继续往后执行。它的最大优点就是代码的写法非常像同步操作如果去除yield命令简直一模一样。 协程遇到`yield`命令就暂停等到执行权返回再从暂停的地方继续往后执行。它的最大优点就是代码的写法非常像同步操作如果去除yield命令简直一模一样。
### Generator函数的概念 ### Generator函数的概念
Generator函数是协程在ES6的实现最大特点就是可以交出函数的执行权即暂停执行 Generator函数是协程在ES6的实现最大特点就是可以交出函数的执行权即暂停执行
整个Generator函数就是一个封装的异步任务或者说是异步任务的容器。异步操作需要暂停的地方都用yield语句注明。Generator函数的执行方法如下。 整个Generator函数就是一个封装的异步任务或者说是异步任务的容器。异步操作需要暂停的地方都用`yield`语句注明。Generator函数的执行方法如下。
```javascript ```javascript
function* gen(x){ function* gen(x){

View File

@ -227,7 +227,7 @@ var baz = { [foo]: 'abc'};
```javascript ```javascript
var person = { var person = {
sayName: function() { sayName() {
console.log(this.name); console.log(this.name);
}, },
get firstName() { get firstName() {

View File

@ -8,6 +8,12 @@
<title>ECMAScript 6入门</title> <title>ECMAScript 6入门</title>
<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon"> <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon">
<link rel="icon" href="/favicon.ico" type="image/x-icon"> <link rel="icon" href="/favicon.ico" type="image/x-icon">
<script src="js/jquery-1.11.0.min.js"></script>
<script src="js/jquery-ui.min.js"></script>
<script src="js/marked.js"></script>
<script src="js/store.js"></script>
<script src="js/ditto.js"></script>
<script src="js/prism.js"></script>
</head> </head>
<body> <body>
<!-- essential --> <!-- essential -->
@ -21,12 +27,6 @@
<div id="flip"><div id="pageup">上一章</div><div id="pagedown">下一章</div></div> <div id="flip"><div id="pageup">上一章</div><div id="pagedown">下一章</div></div>
<div class="progress-indicator-2"></div> <div class="progress-indicator-2"></div>
<script src="js/jquery-1.11.0.min.js"></script>
<script src="js/jquery-ui.min.js"></script>
<script src="js/marked.js"></script>
<script src="js/store.js"></script>
<script src="js/ditto.js"></script>
<script src="js/prism.js"></script>
<script src="config.js"></script> <script src="config.js"></script>
<script> <script>
ditto.run(); ditto.run();