Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JSON操作-使用相同值计数键,创建使用计数作为值的新对象_Javascript_Jquery_Json_Transform - Fatal编程技术网

Javascript JSON操作-使用相同值计数键,创建使用计数作为值的新对象

Javascript JSON操作-使用相同值计数键,创建使用计数作为值的新对象,javascript,jquery,json,transform,Javascript,Jquery,Json,Transform,我想计算具有相同日期的JSON节点,并创建一个新对象,日期作为键,计数作为值 那么,使用jQuery或vanilla JS,我将如何实现这一点: [ { "date": "January 1" }, { "date": "January 1" }, { "date": "January 1" }, { "da

我想计算具有相同日期的JSON节点,并创建一个新对象,日期作为键,计数作为值

那么,使用jQuery或vanilla JS,我将如何实现这一点:

[
  {
    "date": "January 1"
  },
  {
    "date": "January 1"
  },
  {
    "date": "January 1"
  },
  {
    "date": "January 1"
  },
  {
    "date": "February 14"
  },
  {
    "date": "February 14"
  },
  {
    "date": "July 8"
  },
  {
    "date": "July 8"
  },
  {
    "date": "July 8"
  },
  {
    "date": "December 11"
  }
]
为此:

[
  {
    "January 1": 4 // Number or String "4", doesn't matter
  },
  {
    "February 14": 2
  },
  {
    "July 8": 3
  },
  {
    "December 11": 1
  }
]

试试这样的

const数据=[
{
“日期”:“1月1日”
},
{
“日期”:“1月1日”
},
{
“日期”:“1月1日”
},
{
“日期”:“1月1日”
},
{
“日期”:“2月14日”
},
{
“日期”:“2月14日”
},
{
“日期”:“7月8日”
},
{
“日期”:“7月8日”
},
{
“日期”:“7月8日”
},
{
“日期”:“12月11日”
}
]
让计数器={}
data.forEach(功能(obj){
var key=obj.date
计数器[键]=(计数器[键]| | 0)+1
})

log(counter)
这是一项相当简单的任务,使用了几种不同的循环/数组方法之一。你在实现目标时遇到了什么问题?你尝试过什么?