我需要测试我的JSON响应,以确保至少1个对象包含isKey:true值,此时hasKey的全局变量设置为true。
我相信在这种情况下,某些方法会有所帮助,但它似乎只能在本地级别进行测试,因此,如果我在console.log中得到:true,false,true,true ...等等
我只想确定整个模型的正确或错误。
在下面您可以看到工作功能的基础,但我认为它并不有效,因此,在改进此功能方面会得到任何建议。
checkKeys() {
let checkTest: boolean = false;
this.modalData.columnPermissions.some(function (item) {
if (item.isKey) {
checkTest = true;
}
});
this.modalData.hasKey = checkTest;
}
答案 0 :(得分:1)
您使用的功能正确,只是您在错误地使用它。
this.modalData.hasKey = this.modalData.columnPermissions.some(function (item) {
return item.isKey;
});
'some'函数获取返回值,并在返回真值后立即停止运行。
'every'函数获取返回值,并在返回false时立即停止运行。
答案 1 :(得分:1)
您可以直接分配some
的结果。
checkKeys() {
this.modalData.hasKey = this.modalData.columnPermissions.some(function (item) {
return item.isKey;
});
}