fix some syntax error (#34137)

This commit is contained in:
Johnson
2019-03-20 14:42:48 +08:00
committed by Jingyi Ding
parent eeae761325
commit 915c5fbfb6

View File

@ -1,33 +1,33 @@
--- ---
title: Arrow Functions title: Arrow Functions
localeTitle: 箭头功能 localeTitle: 箭头函数
--- ---
## 箭头功能 ## 箭头函数
ES6中的功能发生了一些变化。我的意思是语法 ES6中的函数新增了一种语法(箭头函数)
```javascript ```javascript
// Old Syntax // 老语法
function oldOne() { function oldOne() {
console.log("Hello World..!"); console.log("Hello World..!");
} }
// New Syntax // 新语法
var newOne = () => { var newOne = () => {
console.log("Hello World..!"); console.log("Hello World..!");
} }
``` ```
新语法可能会让人感到困惑。但我会尝试解释语法。 语法分为两部分。 新语法可能会让人感到困惑。但我会尝试解释。 语法分为两部分。
1. var newOne = 1. var newOne =
2. \=> {} 2. \=> {}
第一部分是声明一个变量并将函数(即)()分配给它。它只是说变量实际上是一个函数。 第一部分是声明一个变量并将函数()分配给它。它只是说变量实际上是一个函数。
然后第二部分声明函数的正文部分。带有花括号的箭头部分定义了身体部位 然后第二部分声明函数的正文部分。带有花括号的箭头部分定义了函数主体
参数的另一个例子 参数传递
```javascript ```javascript
let NewOneWithParameters = (a, b) => { let NewOneWithParameters = (a, b) => {
@ -44,18 +44,18 @@ let newOneWithOneParam = a => {
} }
``` ```
箭头功能的一个令人难以置信的优点是你不能重绑定箭头功能。它将始终使用定义它的上下文进行调用。只需使用正常功能。 箭头函数最大的特点在于不能重绑定,函数的上下文(`this`)指向的是定义函数时函数所在的上下文,类似于继承`this`
```javascript ```javascript
// Old Syntax // 老语法
axios.get(url).then(function(response) { axios.get(url).then(function(response) {
this.data = response.data; this.data = response.data;
}).bind(this); }).bind(this);
// New Syntax // 新语法
axios.get(url).then(response => { axios.get(url).then(response => {
this.data = response.data; this.data = response.data;
}); });
``` ```
我认为我不需要对此作出解释。这很简单 该特性可以很好的解决开发过程中this指向导致的问题