码迷,mamicode.com
首页 > 编程语言 > 详细

【前端】javascript函数

时间:2018-04-16 21:55:58      阅读:214      评论:0      收藏:0      [点我收藏+]

标签:function   6.2   str   ++   for   res   接收   java   span   

1、关于函数参数——ES6新特性rest

rest以类似数组的方式将函数的参数保存下来

    function eleDis(...rest) {
        for (var i=0;i<rest.length;i++) {
            alert(rest[i]);
        }
    }
    eleDis(1,2,[3,4,5]);

eleDis函数会打印出每个实参的值。

对js而言,它是允许传入任意个参数的,即使调用的实参比形参的数量还多

 

2、高阶函数

即可以接收一个函数作为它的参数的函数

常用的有map、reduce、filter、sort

map:我理解就是对一个数组中每个元素做操作,比如:

var str = [1,2,3];
    var strNew = str.map(
        (x)=>{
            return ++x;
        }
        )
    alert(strNew)

 

reduce:接收两个参数,做累计运算,比如:

var str = [1,2,3];
    var strNew = str.reduce(
        (x,y)=>{
            return x+y;
        }
        )
    alert(strNew)

上面这个函数就可以完成对数组的累加

 

filter:过滤掉数组中你不想保留的元素,其中根据返回值时true还是false决定元素的去留,比如:

var str = [1,2,3];
    var strNew = str.filter(
        (x)=>{
            return x%2==0;
        }
        )
    alert(strNew)

上面的代码可以实现保留数组中的偶数

 

sort:对数组元素进行排序,比如:

var str = [71,9,0,12,106.23];
    var strNew = str.sort(
        (x,y)=>{
            if (x>y) return 1;
            else if (x==y) return 0;
            else return -1;
        }
        )
    alert(strNew)

其实就是根据自定义的比较规则来排序———前面元素和后面元素比较返回为-1

 

【前端】javascript函数

标签:function   6.2   str   ++   for   res   接收   java   span   

原文地址:https://www.cnblogs.com/hhssqq9999/p/8858711.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!