var all = "02 06 11 12 19 29 09 10 12 19 22 29 08 11 13 19 28 31 07 08 09 15 22 27 10 18 19 29 32 33 05 07 10 23 28 29 01 07 10 16 22 33 11 12 13 16 23 25 07 09 18 22 23 29 03 06 13 14 19 28 03 05 06 13 20 22 01 05 06 16 25 30 01 05 11 20 22 24 03 08 14 20 24 26 14 18 21 25 28 29 03 05 14 25 26 30 01 12 16 20 22 24 03 07 14 23 25 27 05 07 18 19 22 24 01 02 04 15 17 22 01 02 04 15 17 22 01 04 08 09 14 15 01 03 06 19 21 29 06 09 10 14 28 30 03 11 12 16 21 23 02 12 13 18 25 27 03 06 11 26 30 32 01 11 12 18 25 27 11 15 20 21 26 33 09 12 20 24 28 31 06 08 13 15 22 33 11 12 13 19 26 28 03 10 21 23 27 33 01 08 17 20 21 22 05 10 17 23 26 32 05 09 10 12 17 19 13 14 20 25 27 31 02 07 08 09 17 29 02 20 21 28 31 33 14 18 19 26 30 31 01 14 16 17 20 31 07 18 24 29 31 33 01 08 11 26 28 31 05 09 13 15 18 26 07 11 12 13 18 19 06 10 23 25 26 29 02 05 07 09 11 27 06 14 19 20 21 23 05 08 15 20 27 30 04 07 11 14 29 32 03 07 20 21 25 31 01 19 25 26 27 33 02 06 12 17 25 28 01 03 06 19 21 29";
var arr = all.split(" ");
var b = {}; // 用来存储次数的对象
// arr 源数组
// fn 用来对数据进行加工,reduce函数本身并没有进行次数累计功能
// initial 存储统计次数用的函数
reduce(arr, function(s, s1, idx) {
s[s1] = (s[s1] + 1) || 1;
return s;
}, b);

function reduce(arr, fn, initial) {
return(function reduceOne(index, value) {
if(index > arr.length - 1) return value;
return reduceOne(index + 1, fn(value, arr[index], index, arr));
})(0, initial);
}

js 统计数组中元素的个数的更多相关文章

  1. js删除数组中元素的方法

    一.清空数组 var ary = [1,2,3,4]; ary.splice(0,ary.length);//清空数组 console.log(ary); // 输出 [],空数组,即被清空了 二.删 ...

  2. js删除数组中元素 delete 和splice的区别

    例如我有一个数组: var array = ["aa","dd","cc","aa"] ,我想删除这个数组的“dd”元素 ...

  3. js计算数组中元素出现的次数,并实现去重

    function getCount(arr, rank,ranktype){ var obj = {}, k, arr1 = []; for (var i = 0, len = arr.length; ...

  4. LeetCode - 统计数组中的元素

    1. 统计数组中元素总结 1.1 统计元素出现的次数 为了统计元素出现的次数,我们肯定需要一个map来记录每个数组以及对应数字出现的频次.这里map的选择比较有讲究: 如果数据的范围有限制,如:只有小 ...

  5. #PHP 数组添加元素、统计数组相同元素个数、改变数组key值~_~

    一.数组添加元素 1.定义和用法: array_push() 函数向第一个参数的数组尾部添加一个或多个元素(入栈),然后返回新数组的长度. 2.语法: array_push(array,value1, ...

  6. JS中split使用方法和数组中元素的删除

    JS中split使用方法和数组中元素的删除 JS中split使用方法 <script language="javascript"> function spli(){ d ...

  7. js从数组中删除指定值(不是指定位置)的元素

    RT: js从数组中删除指定值的元素,注意是指定值,而不是指定位置. 比如数组{1,2,3,4,5},我要删除其中的元素3,但是这个3的位置我是不知道的,只知道要删除值为3的这一个元素,请问要怎么写? ...

  8. js将数组中一个或多个字段相同的子元素中合并

    最近js中遇到js将数组中一个或多个字段相同的子元素中合并,相信很多朋友也有遇到,大家可能有多种方法,我在这里记录一个相对简单的方法,当然大家如有其它更好的方法,请提出来大家共同学习. //将经济事项 ...

  9. js 删除 数组中某个元素(转载)

    来源:https://www.jb51.net/article/134312.htm js删除数组中某一项或几项的几种方法 https://www.jb51.net/article/154737.ht ...

随机推荐

  1. mac中svn服务器的搭建以及如何在eclipse中使用

    mac自带了svn客户端和服务端功能. 1.查看svn版本 svnserve --version yintingtingdeMacBook-Pro:~ yintingting$ svnserve -- ...

  2. 前端(慕课网)笔记二:http协议

    缓存 cors 1.http协议的主要特点: 简单快速:每个资源URI是固定的: 灵活:通过一个协议完成不同数据格式的传输 无连接:连接一次就会断开,不会保持连接 无状态:客服端和服务端是两种身份,客 ...

  3. 闭包 -> 函数的嵌套

    内层函数对外层函数中的变量的使用 好处: 1. 保护变量不被侵害 2. 让一个变量常驻内存 如何通过代码查看一个闭包 __closure__: 有东西就是闭包. 没东西就不是闭包 # 闭包的优点: # ...

  4. css动画animation-keyframes

    随着css3的流行,现在很多可以使用css3实现的动画效果,基本上就选择css3实现,尤其是在移动端的(移动端对css3的支持度相对比较高,PC端有很多IE8及以下的浏览器拖着后腿呢). 最近做了一个 ...

  5. [转]C# 安装与部署

    部署 Windows 应用程序 本演练演示为启动记事本的 Windows 应用程序创建一个安装程序的过程.在本演练中,您将首先创建一个 Windows 应用程序,然后创建一个安装程序:以便在安装过程中 ...

  6. Maven项目jar包的依懒范围

  7. ajax 406 Not Acceptable

    搞了半天, 后面参照 http://www.th7.cn/web/ajax/201611/194702.shtml, 终于把问题解决了.. 使用ajax向后台请求时,前台报错406 Not Accep ...

  8. spark partition 理解 / coalesce 与 repartition的区别

    一.spark 分区 partition的理解: spark中是以vcore级别调度task的. 如果读取的是hdfs,那么有多少个block,就有多少个partition 举例来说:sparksql ...

  9. Android DBFlow学习及示例

    项目地址:Kotlin-DBflow-example Kotlin-DBflow-example DBFlow是一个功能强大的,非常简单的,带有注解处理的ORM Android数据库.github地址 ...

  10. 20165304《JAVA程序设计》第四周学习总结

    教材内容总结 第五章 子类与继承 1.子类声明中通常用关键字extend来定义一个子类(class 子类名 extend 父类名{}) 2.子类和父类在同一包中的继承性,继承的成员变量或方法的访问权限 ...