热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

获取具有相同值的键集

如何解决《获取具有相同值的键集》经验,为你挑选了1个好方法。

我有Javascript对象数组:

objArray = [
  {"date":"07/19/2017 12:00:00 AM","count":"1000","code":"K100"},
  {"date":"07/21/2017 12:00:00 AM","count":"899","code":"C835"},
  {"date":"07/23/2017 12:00:00 AM","count":"700","code":"C837"},
  {"date":"07/23/2017 12:00:00 AM","count":"800","code":"K100"},
  {"date":"07/23/2017 12:00:00 AM","count":"50","code":"C837"}
];

我希望得到关键日期的所有值具有与下面相同的值

删除重复的日期值

将代码值组合为数组

总结重复日期值的计数值

这是预期的输出:

newObjArray = [
  {"date":"07/19/2017 12:00:00 AM","count":"1000","code":"K100"},
  {"date":"07/21/2017 12:00:00 AM","count":"899","code":"C835"},
  {"date":"07/23/2017 12:00:00 AM","count":"1550","code":["C837","K100","C837"]}
]

这是我尝试过的方式,但可以获得预期的输出.任何可以帮我处理我以获得所需输出的人.



1> Psidom..:

objArray = [
  {"date":"07/19/2017 12:00:00 AM","count":"1000","code":"K100"},
  {"date":"07/21/2017 12:00:00 AM","count":"899","code":"C835"},
  {"date":"07/23/2017 12:00:00 AM","count":"700","code":"C837"},
  {"date":"07/23/2017 12:00:00 AM","count":"800","code":"K100"},
  {"date":"07/23/2017 12:00:00 AM","count":"50","code":"C837"}
];


var objs = objArray.reduce((obj, rec) => {
  if (obj[rec.date] === undefined) {
    rec.code = [rec.code];
    rec.count = Number(rec.count);
    obj[rec.date] = rec;
  } else {
    obj[rec.date].count += Number(rec.count);
    obj[rec.date].code.push(rec.code);
  }
  return obj;
}, {}) 

console.log(Object.values(objs));

推荐阅读
  • 用JavaScript实现的太空人手表
    用JavaScript实现的太空人手表-JS写的太空人手表,没有用canvas、svg。主要用几个大的函数来动态显示时间、天气这些。天气的获取用到了AJAX请求。代码中有详细的注释 ... [详细]
  • 本文介绍了前端人员必须知道的三个问题,即前端都做哪些事、前端都需要哪些技术,以及前端的发展阶段。初级阶段包括HTML、CSS、JavaScript和jQuery的基础知识。进阶阶段涵盖了面向对象编程、响应式设计、Ajax、HTML5等新兴技术。高级阶段包括架构基础、模块化开发、预编译和前沿规范等内容。此外,还介绍了一些后端服务,如Node.js。 ... [详细]
  • 本文总结了在编写JS代码时,不同浏览器间的兼容性差异,并提供了相应的解决方法。其中包括阻止默认事件的代码示例和猎取兄弟节点的函数。这些方法可以帮助开发者在不同浏览器上实现一致的功能。 ... [详细]
  • [JavaScript] 多数前端工程师都没注意到的一个关于console.log()的坑
    [JavaScript]多数前端工程师都没注意到的一个关于console.log()的坑请阅读以下代码并猜测结果:functiontest(){le ... [详细]
  • JavaScript概述1.JavaScript定义JavaScript是Netscape公司开发的一种基于对象和事件驱动的脚本语言。它是弱类型语言,只能由浏览器解释执行。其中:脚本语言:解释运行( ... [详细]
  • ImgettingabugwithInternetExplorer.Theiframedoesnthavecorrectsizeanditisdisplayedo ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • 本文介绍了在wepy中运用小顺序页面受权的计划,包含了用户点击作废后的从新受权计划。 ... [详细]
  • React基础篇一 - JSX语法扩展与使用
    本文介绍了React基础篇一中的JSX语法扩展与使用。JSX是一种JavaScript的语法扩展,用于描述React中的用户界面。文章详细介绍了在JSX中使用表达式的方法,并给出了一个示例代码。最后,提到了JSX在编译后会被转化为普通的JavaScript对象。 ... [详细]
  • Node.js学习笔记(一)package.json及cnpm
    本文介绍了Node.js中包的概念,以及如何使用包来统一管理具有相互依赖关系的模块。同时还介绍了NPM(Node Package Manager)的基本介绍和使用方法,以及如何通过NPM下载第三方模块。 ... [详细]
  • 本文介绍了2015年九月八日的js学习总结及相关知识点,包括参考书《javaScript Dom编程的艺术》、js简史、Dom、DHTML、解释型程序设计和编译型程序设计等内容。同时还提到了最佳实践是将标签放到HTML文档的最后,并且对语句和注释的使用进行了说明。 ... [详细]
  • 本文介绍了Java后台Jsonp处理方法及其应用场景。首先解释了Jsonp是一个非官方的协议,它允许在服务器端通过Script tags返回至客户端,并通过javascript callback的形式实现跨域访问。然后介绍了JSON系统开发方法,它是一种面向数据结构的分析和设计方法,以活动为中心,将一连串的活动顺序组合成一个完整的工作进程。接着给出了一个客户端示例代码,使用了jQuery的ajax方法请求一个Jsonp数据。 ... [详细]
  • 本文介绍了JavaScript进化到TypeScript的历史和背景,解释了TypeScript相对于JavaScript的优势和特点。作者分享了自己对TypeScript的观察和认识,并提到了在项目开发中使用TypeScript的好处。最后,作者表示对TypeScript进行尝试和探索的态度。 ... [详细]
  • Jquery 跨域问题
    为什么80%的码农都做不了架构师?JQuery1.2后getJSON方法支持跨域读取json数据,原理是利用一个叫做jsonp的概念。当然 ... [详细]
  • Itwasworkingcorrectly,butyesterdayitstartedgiving401.IhavetriedwithGooglecontactsAPI ... [详细]
author-avatar
黑色鲜花_866
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有