javascript - 如何计算 JSON 集合中的所有重复值?

标签 javascript mapreduce underscore.js

我想统计以下 JSON 字符串中的所有公司。我最初计划使用循环手动执行此操作,但似乎这是我学习使用 map/reduce 的好机会...如何返回返回 {company: 2} 的内容?

[
  {
    _id: '123',
    company: 'Acme'
  }
  {
    _id: '123',
    company: 'Innatrode'
  }
  {
    _id: '123',
    company: 'Acme'
  }
]

最佳答案

如果要获取唯一公司名称的个数,则

  1. 使用 _.pluck从公司对象列表中获取 company 属性

  2. 使用 _.uniq 从中找出唯一值,这将返回一个数组。

  3. 用键 `com 组成一个新对象

    console.log({company: _.uniq(_.pluck(companies, "company")).length});
    # { company: 2 }
    

关于javascript - 如何计算 JSON 集合中的所有重复值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22552408/

相关文章:

Hadoop MapReduce InputFormat 已弃用?

hadoop - 映射器将值传递给不同的映射器-缩减器

hadoop - 在新的Hadoop API中替换TextInputFormat

javascript - Fabric.js 通过输入编辑文本

javascript - esri打印任务和导出网络 map 有什么区别

javascript - 在 JavaScript 中将方法用作(curried)函数

javascript - IE8 无法识别 Backbone.js 事件

javascript - 我无法在 Backbone.js 中执行验证。

javascript - 如何在电子邮件验证期间仅更改正则表达式模式的验证消息

javascript - 从本地存储中一一检索数组列表