我有 JSON 对象来保存网格 UI 中的选定项目。我有验证规则,其中所选项目必须在 1 或 2 秒时处于同一规范中
selectedAssessments=[{"id":"babe42c3-13b8-e711-80c7-0050568f1fad","checked":true,"norm":1},{"id":"86f893e1-37b8-e711-80c7-0050568f1fad","checked":true,"norm":1}];
if(selectedAssessments.some(item => ( !(item.norm === 1) ||!(item.norm ===2))))
{
alert('value must the same norms.');
break;
}
观察你的代码:
- 你的病情有点混乱,你需要做的是:
item.norm !== 1 && item.norm !== 2
。
现在让我们执行代码:
var selectedAssessments = [{
"id": "babe42c3-13b8-e711-80c7-0050568f1fad",
"checked": true,
"norm": 1
}, {
"id": "86f893e1-37b8-e711-80c7-0050568f1fad",
"checked": true,
"norm": 1
}];
if ( selectedAssessments.some(item => item.norm !== 1 && item.norm !== 2) ) {
alert('value must the same norms.');
} else {
console.log("Everything looks good!");
}
您可以在数组上运行 filter 命令。这将返回一个经过您设置的过滤器的新数组。如果两个数组的长度相同,则测试完成正常。