<h1>6、箭头函数</h1>
<div><h3>6.1箭头函数的语法</h3>
<p>
<span>在ES6中可以使用“箭头”(=>)定义函数,由函数参数、箭头和函数体组成。</span>
<br>例:<pre>
/*单一参数,函数体只有一条语句的箭头函数定义形式如下:*/
let a = msg =>msg /*相当于 let function welcome(msg){return msg;}*/
/*如果函数有多于一个的参数,则需要在参数的两侧添加一对圆括号。*/
let a = (user,msg) =>`${user},${msg}`;
/*没有参数就使用一对空的圆括号*/
let a =() =>"ABCD.";
</pre>
</p>
<p>
<span>如果函数体有多条语句,则需要用花括号包裹函数体。</span>
<br>例:
<pre>
let add = (a,b) =>{
let c = a + b;
return c;
}
/*相当于
function add(a,b){
let c= a+b;
return c;
}
*/
</pre>
</p>
<p>
<span>如果要创建一个空函数,则需要写一对没有内容的圆括号代表参数部分,一对没用内容的花括号代表空的函数体。</span>
<br>例:<pre>
let msg = () => {};
/*相当于
function msg(){};
*/
</pre>
</p>
<p>
<span>如果箭头函数的返回值是一个对象字面量,则需要将该字面量包裹在圆括号内。</span>
<br>例:<pre>
let createCar = (color,doors) =>({color:color,doors:doors});
/*相当于
function createCar(color,doors){
return{
color:color,
doors:doors
}
}
将对象字面量包裹在圆括号是为了将其与函数体区分开。
*/
</pre>
</p>
<p>
<span>箭头函数可以和对象解构结合起来使用。</span>
<br>例:<pre>
let personInfo =({name,age})=>`${name}'s age is ${age} years old.`;
/*相当于
function personInfo({name,age}){
return `${name}'s age is ${age} years old.`;
}
*/
</pre>
</p>
</div>