ES6-函数参数的默认值
一.看看怎么用
const fn = (x, y = 1) => { return x * y;//2 } fn(2);//x=2,y没有实参使用默认值y=1;
二.默认值生效条件:该形参===undefined
三.默认值是表达式,惰性求值,和前面数组,对象解构赋值的默认值同理;
四.设置默认值小技巧,把有默认值的形参放到参数列表右边,类似(一)中的代码;
五.与解构赋值配合的应用
const fn = ({ x = 1, y = 1 } = {}) => {
console.log(x, y);//1,1
}
fn();//什么都不传,相当于{x=1,y=1}=undefined,会报错,所以给形参{x=1,y=1}设置默认值{}就是什么都不传时生效
//{x=1,y=1}={}又是解构赋值
注意:还没确定默认值生效之前,也就是传参之前{x=1,y=1}={}不会当作解构赋值执行;
浙公网安备 33010602011771号