javascript - 如何检查大于特定值的数组元素
问题描述
我有以下数组,我需要检查数组是否有任何AvgWT
值
- 大于 15000 且小于 20000 则返回 50
- 大于 10000 且小于 15000 则返回 100
- 大于 5000 且小于 10000 则返回 150
我尝试了以下代码。
var arry = [{"TimeSlot":"8:00 am","AssistedC":0,"Abandons":0,"AvgWT":12152},{"TimeSlot":"8:15 am","AssistedC":0,"Abandons":0,"AvgWT":13942},{"TimeSlot":"8:30 am","AssistedC":0,"Abandons":0,"AvgWT":0},{"TimeSlot":"8:45 am","AssistedC":0,"Abandons":0,"AvgWT":0},{"TimeSlot":"9:00 am","AssistedC":0,"Abandons":0,"AvgWT":0},{"TimeSlot":"9:15 am","AssistedC":0,"Abandons":0,"AvgWT":0},{"TimeSlot":"6:30 pm","AssistedC":0,"Abandons":0,"AvgWT":0},{"TimeSlot":"6:45 pm","AssistedC":0,"Abandons":0,"AvgWT":0},{"TimeSlot":"7:00 pm","AssistedC":0,"Abandons":0,"AvgWT":0}];
function isArrayValueGreater(arry) {
// var first = array[0];
var first = arry[0]["AvgWaitTime"];
return arry.every(function(element) {
if(element["AvgWaitTime"]> 15000 && element["AvgWaitTime"]< 20000){
return 50;
}else if(element["AvgWaitTime"]> 10000 && element["AvgWaitTime"]<15000){
return 100;
}
});
}
isValuesSameG = isArrayValueGreater(arry);
但它不能正常工作,我在这里做错了什么?
解决方案
如果我理解正确,您可以使用 .map() 方法。它将返回具有相同长度的新数组,包括匹配检查和结果。这是代码
const arry = [{"TimeSlot":"8:00 am","AssistedC":0,"Abandons":0,"AvgWT":12152},{"TimeSlot":"8:15 am","AssistedC":0,"Abandons":0,"AvgWT":13942},{"TimeSlot":"8:30 am","AssistedC":0,"Abandons":0,"AvgWT":0},{"TimeSlot":"8:45 am","AssistedC":0,"Abandons":0,"AvgWT":0},{"TimeSlot":"9:00 am","AssistedC":0,"Abandons":0,"AvgWT":0},{"TimeSlot":"9:15 am","AssistedC":0,"Abandons":0,"AvgWT":0},{"TimeSlot":"6:30 pm","AssistedC":0,"Abandons":0,"AvgWT":0},{"TimeSlot":"6:45 pm","AssistedC":0,"Abandons":0,"AvgWT":0},{"TimeSlot":"7:00 pm","AssistedC":0,"Abandons":0,"AvgWT":0}];
function checkIfMatchCondition({ AvgWT: value }) {
if(value < 20000 && value > 15000)
return 50
else if(value < 15000 && value > 10000)
return 100
else if(value < 10000 && value > 5000)
return 150
return 0
}
const res = arry.map(checkIfMatchCondition);
console.log(res)
可以通过包含索引或具有附加属性的整个对象来改进它,但在原始帖子中没有足够的细节。
推荐阅读
- word2vec - 是否建议删除 word2vec 算法中的重复单词?
- javascript - 如何使用作为生成器并能够链接它们的函数来扩展数组?
- python - 如何在 python 中将 csv 中的两列组合为我的 ggplot 的 x 轴?
- java - MD5 - 未定义字符串类型的方法
- json - 以编程方式用数据填充 Firestore 文档
- mysql - 需要为现有项目动态更改时区
- angular - input[ngbdatepicker] 指令的用例
- java - 为什么我的控制台输入没有终止。如果我删除代码 countSwaps(a,size) 则控制台输入终止,否则不会
- java - C#接口协方差,指定参数类型
- python - findall 语句中的 " 问题