美文网首页
数组的高阶函数

数组的高阶函数

作者: BJ呀呀呀 | 来源:发表于2021-05-27 10:26 被阅读0次

什么是高阶函数?

    //1.把一个函数当做另外一个函数的参数,也是高阶函数,同时还是回调函数
    //2.一个函数,内部返回外面一个函数,也是高阶函数   闭包

//some 如果有一个条件满足,就返回true
// every 所有的条件满足才返回true;
// filter 过滤
// forEach 都能做遍历,没有返回值
// map 返回一个新的数组 ,更加注重返回结果

some 如果有一个条件满足,就返回true

        var arr = [11, 22, 33, 44, 55];
        //el,每一个成员
        //index,每个成员的下标
        //aaa 原来的数组

        //默认返回false
        var res = arr.some(function (el, index, aaa) {
            return el == 33
        })
        console.log(res);//true

every 所有的条件满足才返回true;

        //el,每一个成员
        //index,每个成员的下标
        //aaa 原来的数组
        var arr = [11, 22, 33, 44, 55];
        var res = arr.every(function (el, index, aaa) {
            return el > 30
        })
        console.log(res);//false

filter 过滤 返回一个新的数组

        //找出所有大于20的,并放到一个新的数组里

        var arr = [11, 22, 33, 44, 55]; //大于20

        var newArr = arr.filter(function (el) {
            return el > 20
        })

        console.log(newArr);//[22, 33, 44, 55]

        // var newArr = [];
        // for (var i = 0; i < arr.length; i++) {
        //     if (arr[i] > 20) {
        //         newArr.push(arr[i]);
        //     }
        // }

forEach 纯粹只做遍历 不能被中断 想中断可以用异常处理 没有返回值

          // for 可以用return , break 中断
        var arr = [11, 22, 33, 44, 55];
        var res = arr.forEach(function (el, index, aaa) {
            console.log(el, index, aaa);
        })

        console.log(res);//undefined

map 也是做遍历,有返回值,返回是新数组

        var arr = [11, 22, 33, 44, 55];
        //请将每个元素放大10倍,得到一个新数组
        var arr1 = arr.map(function (el, index) {
            return el * 10
        })
        console.log(arr1);
        console.log(arr);

reduce 累加器

//pre 初始值
//cur 
//index 下标
//aaa 原数组
// 第二个参数100,就是给pre设置初始值,第二个参数没写的话,这里初始值就是11 
//return 没有返回值的话 ,第二次开始pre 的返回值为undefined
var arr = [11, 22, 33, 44, 55];
arr.reduce=(function(pre,cur,index,aaa){
console.log(pre,cur,index);
return index
} ,100)

相关文章

  • Javascript学习笔记——8.8 函数式编程

    使用函数处理数组 用循环的写法 使用map和reduce 高阶函数 所谓高阶函数,就是操作函数的函数,它接受一个或...

  • Kotlin学习之常用高阶函数:filter

    Kotlin学习之常用高阶函数:filter Kotlin高阶函数一般是数组、集合、序列等数据结构的扩展函数,接收...

  • 高阶函数:filter map reduce

    高阶函数:filter map reduce这三个高阶函数都是数组中有几项就执行几次编程范式:面向对象编...

  • 数组的高阶函数

    什么是高阶函数? //some 如果有一个条件满足,就返回true// every 所有的条件满足才返回tr...

  • 数组的高阶函数

    1、forEach() forEach()方法,用于循环遍历整个数组,forEach()方法的回调函数中,可以传两...

  • Javascript教程(十)高阶函数

    一个函数就可以接收另一个函数作为参数,这种函数就称之为高阶函数 以下这些都是作用于数组的高阶函数 1. map()...

  • JavaScript - 合并两个数组

    合并数组a、b 一. concat(),返回新数组,不改变原数组。 二. 循环添加,改变原数组。 三. 高阶函数m...

  • JavaScript高阶函数(filter/sort)

    JavaScript高阶函数(filter/sort) filter() filter() 方法创建一个新数组, ...

  • Swift数组高阶函数

    开发语言:Swift 4.2开发环境:Xcode 10.1 Swift 提供了以下几种高阶函数,用以进行数组转换。...

  • JS 数组高阶函数

    JavaScript的函数其实都指向某个变量。既然变量可以指向函数,函数的参数能接收变量,那么一个函数就可以接收另...

网友评论

      本文标题:数组的高阶函数

      本文链接:https://www.haomeiwen.com/subject/kqmekltx.html