我有一个FICO分数列表,我想根据它们的值进行分组,分组从0-620开始,然后是620-640,每次增加20。
它应该返回的是每个组中的值计数-0-620、620-640、640-660、660-680等,最高到780-800。
我当前正在使用_.countBy
,但它会为每个唯一数字而不是每个组返回一个计数。
var counts = _.countBy(ficos, function(x) { return x });
//Counts should be {620: 22, 625: 19, 655: 24, 670: 20, 690: 30, 720: 29, 734: 17, 760: 21, 790: 18}
有没有办法利用
_.countBy
或其他功能?如果可能,我尝试避免使用较长的if
语句。 最佳答案
因此,请返回适当的组:
function (x) {
if (x < 620) return '<620';
if (x >= 800) return '>800';
var lower = Math.floor(x / 20) * 20,
higher = lower + 20;
return lower + '-' + higher;
}
关于javascript - 对范围使用_.countBy,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27934043/