函数(rest 箭头)

1、参数的默认值

传统方式:

function fn (n,a) {
        var name = n||'';
        var age = a||18||'';
        if(name){
            console.log(name);
        }
    }

  

ES6新方式:

function fn1 (a,n='zs'){
        var name =n;
        var age =a;
        return {name,age};
    }

  

注意:

a:函数的默认值赋初始值,需要放到后面
b:什么情况下会触发默认值  调用函数名不传参数,会调用默认值
 
2、rest函数
rest参数剩下的部分 reslut 第二参数 ...values
使用;
//2、rest函数  ...values (三个点+变量名) -》扩展运算符
    function sum(result,...values){
        values.forEach(function(v,i){
            result+=v;
        })
        console.log(result);
    }
    var res = 0;
    sum(res,1,2,3,4);
   //总结:rest函数:调用时排除第一个参数,其他的参数会被。。。values逐一获取到

  

...values 扩展运算符

它一般结合数组使用,把数组的元素用逗号分隔开来,组成一个序列。

    function sum1(a,b,c){
        return a+b+c;
    }
    var arr = [1,2,3]
    console.log(sum1(...arr))

  

3、箭头函数

用箭头符号(=>)

简单使用方法

    //普通函数
    var sum = function(a){
        return a;
    };
    console.log(sum(1));
    //箭头函数写法
    var sum = a=>a;
    console.log(sum(1));

  

当传入参数不唯一,返回不唯一

    var sum = (a,b) => {return a+b}
    sum(1,2);//3
    console.log(sum(1,2))

  

对一个数组[1,2,3,4]里面的数求和

    //传统方法
    var sum = 0;
    [1, 2, 3, 4,].forEach(function (v) {
        sum += v;
    });
    console.log(sum);
    //箭头函数
    var sum = 0;
    [1, 2, 3, 4].forEach(v => sum += v);
    console.log(sum);

  

 注意:

        // 箭头函数的this指向和function函数的this指向有什么区别
        //  1. 箭头函数this指向定义它的地方
        //  2. function 函数this指向调用它的地方
 

 

 posted on 2020-09-01 17:08  wen22  阅读(382)  评论(0编辑  收藏  举报