箭头函数
var add = (a,b)=>{}
箭头函数:用来简化函数定义语法
(形参)=>{执行语句}
如果函数体中只有一句代码,且代码的执行结果就是返回值,可以省略大括号
如果形参只有一个,则,可以省略小括号
箭头函数不绑定this,箭头函数中的this,指向是函数定义位置的上下文this。
const obj={name:‘tom‘}; function fn(){ console.log(this); return ()=>{ console.log(this);//这个this指向fn的this } } const resFn= fn.call(obj); resFn();
参数设置默认值
function(a,b){ //曾经实现默认参数的方式 a=a?a:0; b=b?b:0; return a+b } //现在可以这样设置 function tesr(a=1,b=2){ return a+b; }
扩展运算符与剩余参数相反,可以将数组或对象拆分为用逗号分隔的参数序列
可以用于合并数组
将类数组或,可遍历对象转换为真正的数组
将类数组转换成真正的数组可以调用数组的方法
Array.from(参数1,参数2)也可以使用此方法将类数组转化成真正的数组
参数1,为类数组名字,参数2可以是一个函数,也可以不写
let arr=[1,2,3]; // ...arr;//1,2,3 console.log(...arr); console.log(arr);
let a1=[1,2,3]; let a2=[4,5,6]; let a3=[...a1,...a2]; console.log(a3);
let b1=[1,2,3]; let b2=[4,5,6]; b1.push(...b2); console.log(b1);
剩余参数:剩余参数语法允许我们将一个不定数量的参数表示为一个数组
由于箭头函数不能使用arguments
剩余参数与解构配合使用
function sum (a,b,...c){ console.log(a); console.log(b); console.log(c); } sum(1,2,3,4,5);
const add=(...args)=>{ let tatl=0; args.forEach((item)=>{ tatl+=item; }) return tatl; } console.log(add(1,2,3));
let students=["zz","zd","zsc","zde"]; let [s1,...s2]=students; console.log(s1); console.log(s2);
原文:https://www.cnblogs.com/fhzm/p/13390558.html