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}={}不会当作解构赋值执行;

posted @ 2023-01-10 11:40  游千山  阅读(250)  评论(0)    收藏  举报