我必须使用for循环检查数组列表,然后根据结果执行单个函数,例如
for(var i=0;i<settingData.length;i++){
if(settingData[i].a !== '' && $scope.settingData[i].b){
save();
}else{
alert('missing fields');
}
}
如何让save()执行一次?因为当我发出警报时,它会触发几次,因为它在for循环中。我不能把它拿出来,因为我必须检查我的所有阵列..
答案 0 :(得分:3)
保存功能后添加break
:
for(var i=0;i<settingData.length;i++){
if(settingData[i].a !== '' && $scope.settingData[i].b){
save();
break;
}else{
alert('missing fields');
}
}
答案 1 :(得分:2)
您可以设置missingFields变量。
var missingFields = false;
for(var i=0;i<settingData.length;i++){
if(! (settingData[i].a !== '' && $scope.settingData[i].b) ) {
missingFields = true;
alert('missing fields');
break;
}
}
if (!missingFields) {
save();
}