雙層for循環(huán),拿第幾個元素與每一個元素比較,同時索引不等恢着,如果元素相等桐愉,就重復(fù),不等就不重復(fù)掰派。
性能并不好从诲,不推薦,權(quán)當(dāng)是種思路靡羡。
// 校驗 進(jìn)場人員身份證系洛、進(jìn)場車輛 身份證、車牌號唯一性略步,不得有重復(fù)
vm.uniquenessCheck = function(objArr,keyName,tableRepeatPrompt){
for(var i = 0; i < objArr.length; i++){
for(var j = 0; j < objArr.length; j++){
if(objArr[i][keyName] ==objArr[j][keyName] && i!=j){
toaster.error({title: "提示" , body: tableRepeatPrompt+"列不得有重復(fù)!"} );
if(keyName == 'personCardId'){
vm.checkPersonCardIdUnique = false;
return;
}
if(keyName == 'driverCardId'){
vm.checkDriverCardIdUnique = false;
return;
}
if(keyName == 'plateNumber'){
vm.checkPlateNumberUnique = false;
return;
}
}
}
}
}
// 校驗唯一性 身份證描扯、車牌號
vm.checkIfRepeat = function(){
vm.checkPersonCardIdUnique = true;
vm.checkDriverCardIdUnique = true;
vm.checkPlateNumberUnique = true;
vm.uniquenessCheck(vm.addPersonData, 'personCardId', "進(jìn)場人員表格中身份證號");
vm.uniquenessCheck(vm.driverGridData, 'driverCardId', "進(jìn)場車輛表格中身份證號");
vm.uniquenessCheck(vm.driverGridData, 'plateNumber', "進(jìn)場車輛表格中車牌號");
if( vm.checkPersonCardIdUnique && vm.checkDriverCardIdUnique && vm.checkPlateNumberUnique){
// 提交測試
}
}