61 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			61 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
|   | --- | |||
|  | title: Arrow Functions | |||
|  | localeTitle: 箭头功能 | |||
|  | --- | |||
|  | ## 箭头功能
 | |||
|  | 
 | |||
|  | ES6中的功能发生了一些变化。我的意思是语法。 | |||
|  | 
 | |||
|  | ```javascript | |||
|  | // Old Syntax  | |||
|  |  function oldOne() {  | |||
|  |  console.log("Hello World..!");  | |||
|  |  }  | |||
|  |   | |||
|  |  // New Syntax  | |||
|  |  var newOne = () => {  | |||
|  |  console.log("Hello World..!");  | |||
|  |  }  | |||
|  | ``` | |||
|  | 
 | |||
|  | 新语法可能会让人感到困惑。但我会尝试解释语法。 语法分为两部分。 | |||
|  | 
 | |||
|  | 1.  var newOne =() | |||
|  | 2.  \=> {} | |||
|  | 
 | |||
|  | 第一部分是声明一个变量并将函数(即)()分配给它。它只是说变量实际上是一个函数。 | |||
|  | 
 | |||
|  | 然后第二部分声明函数的正文部分。带有花括号的箭头部分定义了身体部位。 | |||
|  | 
 | |||
|  | 参数的另一个例子: | |||
|  | 
 | |||
|  | ```javascript | |||
|  | let NewOneWithParameters = (a, b) => {  | |||
|  |  console.log(a+b); // 30  | |||
|  |  }  | |||
|  |  NewOneWithParameters(10, 20);  | |||
|  | ``` | |||
|  | 
 | |||
|  | 当只有一个参数名称时,括号是可选的: | |||
|  | 
 | |||
|  | ```javascript | |||
|  | let newOneWithOneParam = a => {  | |||
|  |  console.log(a);  | |||
|  |  }  | |||
|  | ``` | |||
|  | 
 | |||
|  | 箭头功能的一个令人难以置信的优点是你不能重新绑定箭头功能。它将始终使用定义它的上下文进行调用。只需使用正常功能。 | |||
|  | 
 | |||
|  | ```javascript | |||
|  | // Old Syntax  | |||
|  |  axios.get(url).then(function(response) {  | |||
|  |   this.data = response.data;  | |||
|  |  }).bind(this);  | |||
|  |   | |||
|  |  // New Syntax  | |||
|  |  axios.get(url).then(response => {  | |||
|  |   this.data = response.data;  | |||
|  |  });  | |||
|  | ``` | |||
|  | 
 | |||
|  | 我认为我不需要对此作出解释。这很简单。 |