js根据需要计算数组中重复出现某个元素的个数


Posted in Javascript onJanuary 18, 2019

一、有时候的根据需要需要计算数组中某个元素重复出现的个数

var arr = ["apple","orange","apple","orange","pear","orange"];

计算出来重复出现的元素个数:{apple: 2, orange: 3, pear: 1}

二、代码实现

//统计一个数组中有多少个不重复的单词:
  // 不用reduce时: 
  var arr = ["apple","orange","apple","orange","pear","orange"]; 
  function getWordCnt(){ 
    var obj = {}; 
    for(var i= 0, l = arr.length; i< l; i++){ 
      var item = arr[i]; 
      obj[item] = (obj[item] +1 ) || 1; 
    } 
    return obj; 
  }
  console.log(getWordCnt());//{apple: 2, orange: 3, pear: 1}
  // 用reduce时: 
  var arr = ["apple","orange","apple","orange","pear","orange"]; 
  function getWordCnt(){ 
    return arr.reduce(function(prev,next){ 
      prev[next] = (prev[next] + 1) || 1; 
      return prev; 
    },{}); 
  } 
  console.log(getWordCnt());//{apple: 2, orange: 3, pear: 1}

补充知识点:

若查询对象中某个属性没有,可自行为其添加

var muziObj = {};
  muziObj['name'] = 'muzidigbig';
  muziObj.age = 21;
  console.log(muziObj)//{name: "muzidigbig", age: 21}

若有不足请多多指教!希望给您带来帮助!

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Javascript 相关文章推荐
javascript面向对象编程(一) 实例代码
Jun 25 Javascript
Jquery实现自定义tooltip示例代码
Feb 12 Javascript
javascript实现图像循环明暗变化的方法
Feb 25 Javascript
图解JavaScript中的this关键字
May 28 Javascript
jQuery实现表格隔行及滑动,点击时变色的方法【测试可用】
Aug 20 Javascript
Vue.js开发环境搭建
Nov 10 Javascript
自定义require函数让浏览器按需加载Js文件
Nov 24 Javascript
详解VueJS 数据驱动和依赖追踪分析
Jul 26 Javascript
JS数组操作之增删改查的简单实现
Aug 21 Javascript
JS实现不用中间变量temp 实现两个变量值得交换方法
Feb 04 Javascript
在HTML文档中嵌入JavaScript的四种方法
May 07 Javascript
vue-lazyload使用总结(推荐)
Nov 01 Javascript
js中的reduce()函数讲解
Jan 18 #Javascript
微信小程序实现分享朋友圈的图片功能示例
Jan 18 #Javascript
vue-cli3 karma单元测试的实现
Jan 18 #Javascript
JavaScript查看代码运行效率console.time()与console.timeEnd()用法
Jan 18 #Javascript
如何解决.vue文件url引用文件的问题
Jan 18 #Javascript
Jquery遍历筛选数组的几种方法和遍历解析json对象,Map()方法详解以及数组中查询某值是否存在
Jan 18 #jQuery
vue.js实现的幻灯片功能示例
Jan 18 #Javascript
You might like
php入门学习知识点七 PHP函数的基本应用
2011/07/14 PHP
php图片加水印原理(超简单的实例代码)
2013/01/18 PHP
关于使用coreseek并为其做分页的介绍
2013/06/21 PHP
浅析php中三个等号(===)和两个等号(==)的区别
2013/08/06 PHP
ThinkPHP 3.2 版本升级了哪些内容
2015/03/05 PHP
PHP中empty和isset对于参数结构的判断及empty()和isset()的区别
2015/11/15 PHP
PHP简单实现合并2个数字键数组值的方法
2017/05/30 PHP
统计PHP目录中的文件数方法
2019/03/05 PHP
ASP中Sub和Function的区别说明
2020/08/30 Javascript
获取body标签的两种方法
2011/10/13 Javascript
javascript中CheckBox全选终极方案
2015/05/20 Javascript
Javascript中内建函数reduce的应用详解
2016/10/20 Javascript
微信小程序 页面跳转和数据传递实例详解
2017/01/19 Javascript
JSON与js对象序列化实例详解
2017/03/16 Javascript
为你的微信小程序体积瘦身详解
2017/05/20 Javascript
Vue打包后出现一些map文件的解决方法
2018/02/13 Javascript
JavaScript+Canvas实现彩色图片转换成黑白图片的方法分析
2018/07/31 Javascript
jQuery.validate.js表单验证插件的使用代码详解
2018/10/22 jQuery
Node.js API详解之 Error模块用法实例分析
2020/05/14 Javascript
Nuxt 嵌套路由nuxt-child组件用法(父子页面组件的传值)
2020/11/05 Javascript
[01:19:46]DOTA2-DPC中国联赛 正赛 SAG vs DLG BO3 第一场 2月28日
2021/03/11 DOTA
Python实现CET查分的方法
2015/03/10 Python
Python全排列操作实例分析
2018/07/24 Python
Python爬虫小技巧之伪造随机的User-Agent
2018/09/13 Python
Django框架中序列化和反序列化的例子
2019/08/06 Python
基于python-pptx库中文文档及使用详解
2020/02/14 Python
M1芯片安装python3.9.1的实现
2021/02/02 Python
HTML5响应式(自适应)网页设计的实现
2017/11/17 HTML / CSS
酒店总经理欢迎词
2014/01/15 职场文书
善意的谎言事例
2014/02/15 职场文书
部门群众路线教育实践活动对照检查材料思想汇报
2014/10/07 职场文书
小学运动会通讯稿
2015/07/18 职场文书
公司员工离职感言
2015/08/03 职场文书
浅谈Redis在直播场景的实践方案
2021/04/27 Redis
python必学知识之文件操作(建议收藏)
2021/05/30 Python
vue实现Toast组件轻提示
2022/04/10 Vue.js