如何使用Javascript对数据进行排序并测量每个键值的长度

How to sort data and measure the length as per key value using Javascript

本文关键字:测量 键值 排序 Javascript 何使用 数据      更新时间:2023-09-26

我需要一個幫助。我有一些数据数组,我需要根据键值对长度进行排序。我在下面解释我的代码。

var response = [{
      day_id:1,
      day_name:"Monday",
      subcat_id:"2",
      cat_id:"1",
      comment:"hii"
}, {
      day_id:1,
      day_name:"Monday",
      subcat_id:"1",
      cat_id:"2",
      comment:"hello"
}
 {
      day_id:2,
      day_name:"Tuesday",
      subcat_id:"3",
      cat_id:"2",
      comment:"hii"
}]

这里day_id=1有两组数据,day_id=2相同。我需要根据day_id e,g.for day_id=1 length is 2测量存在的数据集的长度,请帮助我。

您可以映射response并在对象中保存每个 id 被看到的次数:

var counter = {};
response.map(function(item) {
    counter[item.day_id] = (counter[item.day_id] || 0) + 1;
});

您的结果counter

console.log(counter);
// { '1': 2, '2': 1 }

希望对您有所帮助。

不要使用

.map ,使用 .forEach,因为它不会返回另一个数组

代码可以更干净一些:

var counter = {};
response.forEach(function(item) {
    counter[item.day_id] = ++counter[item.day_id] || 1;
});