zoukankan      html  css  js  c++  java
  • 函数(rest 箭头)

    函数(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指向调用它的地方
     
  • 相关阅读:
    windows live writer backup
    SQL SERVER单独安装
    VS异常--未找到与约束 ContractName Microsoft.VisualStudio.Language.Intellisense.IGlyphService RequiredTypeIdentity
    ASP.NET之报表--RDLC(一)---附源码
    尚未指定报表“Report1”的报表定义
    人月神话
    [LeetCode]Reverse Nodes in k-Group
    [LeetCode]Divide Two Integer
    [LeetCode]Minimum Path Sum
    [LeetCode]Regular Expression Matching
  • 原文地址:https://www.cnblogs.com/wenaq/p/13597232.html
Copyright © 2011-2022 走看看