gpt4 book ai didi

javascript - 计算 JSON 中具有某些属性的元素的数量

转载 作者:数据小太阳 更新时间:2023-10-29 05:01:09 26 4
gpt4 key购买 nike

我有一些 JSON 数据:

{"humans": [
{ "firstName" : "Paul", "lastName" : "Taylor", "hairs": 2 },
{ "firstName" : "Sharon", "lastName" : "Mohan", "hairs": 3 },
{ "firstName" : "Mohan", "lastName" : "Harris", "hairs": 3 },
{ "firstName" : "Deborah", "lastName" : "Goldman", "hairs": 4 },
{ "firstName" : "Mark", "lastName" : "Young", "hairs": 4 },
{ "firstName" : "Tom", "lastName" : "Perez", "hairs": 4 }
//and so on...
]}

我希望能够计算所有有 2 根头发、3 根头发等的人。现在我正在使用 jQuery.each() 加上一个递增的计数数组,它工作正常。但我想知道是否有更简单的方法来做到这一点。

更新:说明我现在正在做什么的附加代码:

var results = eval(data.humans);
var count_array = [0, 0, 0, 0, 0, 0, 0];
$(results).each(function() {
if (this.hairs == 1) {
count_array[0]++;
}
if (this.hairs == 2) {
count_array[1]++
}
if (this.hairs == 3) {
count_array[2]++
}
if (this.hairs == 4) {
count_array[3]++
}
if (this.hairs == 5) {
count_array[4]++
}
if (this.hairs == 6) {
count_array[5]++
}
if (this.hairs == 7) {
count_array[6]++
}
});

最佳答案

您可以使用 filter function过滤对象数组:

var data = {...}

data.humans.filter(function(o) { return o.hairs == 2 }).length
//Return the number of humans who have 2 hairs

看看fiddle

关于javascript - 计算 JSON 中具有某些属性的元素的数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30025385/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com