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

edit function/arrow function

This commit is contained in:
ruanyf 2015-08-27 08:44:49 +08:00
parent 417b7c825a
commit 04d80fcbb4
3 changed files with 16 additions and 8 deletions

View File

@ -427,7 +427,6 @@ Generator函数运行后返回一个遍历器对象因此也可以使用
```javascript
var go = function*(){
yield 1;
yield 2;
@ -435,13 +434,14 @@ var go = function*(){
};
[...go()] // [1, 2, 3]
```
上面代码中变量go是一个Generator函数执行后返回的是一个遍历器对这个遍历器执行扩展运算符就会将内部遍历得到的值转为一个数组。
## 箭头函数
### 基本用法
ES6允许使用“箭头”=>)定义函数。
```javascript
@ -540,13 +540,19 @@ headAndTail(1, 2, 3, 4, 5)
// [1,[2,3,4,5]]
```
### 使用注意点
箭头函数有几个使用注意点。
- 函数体内的this对象绑定定义时所在的对象而不是使用时所在的对象。
- 不可以当作构造函数也就是说不可以使用new命令否则会抛出一个错误。
- 不可以使用arguments对象该对象在函数体内不存在。
1函数体内的this对象绑定定义时所在的对象而不是使用时所在的对象。
上面三点中第一点尤其值得注意。this对象的指向是可变的但是在箭头函数中它是固定的。下面的代码是一个例子将this对象绑定定义时所在的对象。
2不可以当作构造函数也就是说不可以使用new命令否则会抛出一个错误。
3不可以使用arguments对象该对象在函数体内不存在。如果要用可以用Rest参数代替。
4不可以使用yield命令因此箭头函数不能用作Generator函数。
上面四点中第一点尤其值得注意。this对象的指向是可变的但是在箭头函数中它是固定的。下面的代码是一个例子将this对象绑定定义时所在的对象。
```javascript
var handler = {
@ -569,6 +575,8 @@ var handler = {
长期以来JavaScript语言的this对象一直是一个令人头痛的问题在对象方法中使用this必须非常小心。箭头函数绑定this很大程度上解决了这个困扰。
### 嵌套的箭头函数
箭头函数内部还可以再使用箭头函数。下面是一个ES5语法的多重嵌套函数。
```javascript

View File

@ -1,6 +1,6 @@
# 编程风格
本章探讨如何将ES6的新语法运用到编码实践之中与传统的JavaScript语法结合在一起写出合理的、易于阅读和维护的代码。多家公司和组织已经公开了它们的风格规范具体可参阅[jscs.info](http://jscs.info/),下面的内容主要参考了[Airbnb](http://jscs.info/)的JavaScript风格规范。
本章探讨如何将ES6的新语法运用到编码实践之中与传统的JavaScript语法结合在一起写出合理的、易于阅读和维护的代码。多家公司和组织已经公开了它们的风格规范具体可参阅[jscs.info](http://jscs.info/),下面的内容主要参考了[Airbnb](https://github.com/airbnb/javascript)的JavaScript风格规范。
## 块级作用域