reduce实现计算数组中每个元素出现的次数 数组去重 将多维数组转化为一维

Posted iwishicould

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了reduce实现计算数组中每个元素出现的次数 数组去重 将多维数组转化为一维相关的知识,希望对你有一定的参考价值。

      // js计算数组中每个元素出现的次数
    //    var names = [‘Alice‘, ‘Bob‘, ‘Tiff‘, ‘Bruce‘, ‘Alice‘];

    //    var countedNames = names.reduce(function (allNames, name) 
    //    if (name in allNames) 
    //        allNames[name]++;
    //    
    //    else 
    //    allNames[name] = 1;
    //    
    //    return allNames;
    //    , );
    //    console.log(countedNames) //Alice: 2, Bob: 1, Tiff: 1, Bruce: 1


    // 数组去重 
    // let arr = [1,2,3,4,4,1]
    // let newArr = arr.reduce((pre,cur)=>
    // if(!pre.includes(cur))
    // return pre.concat(cur)
    // else
    // return pre
    // 
    // ,[])
    // console.log(newArr);// [1, 2, 3, 4]


    //将多维数组转化为一维
    let arr = [[0, 1], [2, 3], [4,[5,6,7]]]
    const newArr = function(arr)
    return arr.reduce((pre,cur)=>pre.concat(Array.isArray(cur)?newArr(cur):cur),[])
    
    console.log(newArr(arr)); //[0, 1, 2, 3, 4, 5, 6, 7]

 

以上是关于reduce实现计算数组中每个元素出现的次数 数组去重 将多维数组转化为一维的主要内容,如果未能解决你的问题,请参考以下文章

reduce()方法:求和求乘积数组中每个元素出现的次数去重二维和多维数组转为一维数组

计算数组中每个元素出现的次数

怎样求数组中元素重复的次数

js查找数组中出现次数最多的元素

js统计一段字符串中出现次数最多的字符

用reduce装逼 之 多个数组中得出公共子数组,统计数组元素出现次数