• 牛客网前端编程:统计数组 arr 中值等于 item 的元素出现的次数


    //方法一:最普遍的一种:for循环
            function count(arr, item) {
                var cnt=0;
                for (var i = 0;i<arr.length;i++){
                    if (arr[i]===item){
                        cnt++;
                    }
                }
                return cnt;
            }
     //方法二:使用filter
            //filter(function(currentValue, index,arr))
            //当有三个参数时:数组当前值,数组当前索引,该数组名称
            //当有一个参数时:数组当前值
            //filter返回的为符合函数条件的数组,且不改变原数组
            function count1(arr, item) {
                var cnt= arr.filter(function (a) {
                   return  a===item;
                })
                return cnt.length;
            }
     //方法三:使用map函数
            //map函数和filter有点像,但是map是对数组中的所有元素进行复核函数条件的处理,最终得到的是一个新数组,元素个数不变
            //filter函数虽然也是返回一个新数组,但是元素的个数等于复核函数条件的元素总和,
            function count2(arr, item) {
                var cnt = 0;
                arr.map(function (a) {
                    if (a===item){
                        cnt++;
                    }
                })
                return cnt;
            }
    //方法五:foeEach,我觉得和for挺像的
            function count4(arr, item) {
                var cnt = 0;
                arr.forEach(function (a) {
                    a===item ? cnt++ : cnt;
                })
                return cnt;
            }
    //方法四:使用reduce
            //reduce(function (init,curr,curr_index),initialValue)
            //其中init:初始元素;curr:当前元素;curr_index:当前元素索引;initialValue:函数初始值;
            //init和curr是必须的,其他参数可选
            function count3(arr, item) {
                var cnt = arr.reduce(function (init,curr) {
                    //如果当前置等于item,该函数值加一
                    return curr === item ? init+1:init;
                },0)
                return cnt;
            }
  • 相关阅读:
    多级联动系列——数组二级联动
    WebSocket初探
    8大最有气质的网络公司
    Quartz中时间表达式的设置-----corn表达式
    Servlet页面间对象传递的方法
    LSPCI具体解释分析
    CREATE PROCEDURE
    php实现工厂模式
    sql语法:inner join on, left join on, right join on具体用法
    C++虚函数表调用学习
  • 原文地址:https://www.cnblogs.com/purple-windbells/p/11249817.html
Copyright © 2020-2023  润新知