gpt4 book ai didi

javascript - 在javascript中计算其范围内的年龄

转载 作者:行者123 更新时间:2023-12-01 00:38:47 29 4
gpt4 key购买 nike

最近在计算重复数组并使它成为对象时遇到了麻烦。现在,我正在尝试解决计算年龄及其范围的问题。我有这个代码片段来计算重复的年龄。

const age = [5, 5, 16, 5, 16];

const sumAge = {};
for (const datum of age) {
let entry = sumAge[datum];
if (entry) {
++entry.count;
} else {
sumAge[datum] = {age: datum, count: 1};
}
}

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

我有结果了

{
age:5,
value: 3
},
{
age:16,
value: 2
}

Ivm 试图解决这个预期结果

{
age:5-15,
value: 3
},
{
age:16-30,
value: 2
}

最佳答案

加上一些年龄范围的定义,这相当简单。使用 find 确定正确的年龄段并将其用作 key 。当年龄不在某个范围内时,可以选择使用 Other 之类的内容。

const age = [5, 5, 16, 5, 16,99];
const ranges = {
"5-15":{ min:5, max:15},
"16-30":{ min:16, max:30},
}

const sumAge = {};
for (const datum of age) {
var range = Object.keys(ranges).find(r => ranges[r].min<=datum && ranges[r].max>= datum) || "Other";
let entry = sumAge[range];
if (entry) {
++entry.count;
} else {
sumAge[range] = {age: range, count: 1};
}
}

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

关于javascript - 在javascript中计算其范围内的年龄,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57871499/

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