条件有一个为真就停止判断

检查数组对象中某个数据是否符合条件,符合就停止判断

需求:

判断数组对象中

  1. def是否为空,如果是的话就提示不可为空

  2. def不为空且为1,那么判断value,min,max是否有一个为空,是的话就提示不可为空

  3. def不为空且为1,那么判断value是否为空,是的话就提示

以上三个条件有一个为真就停止判断

解决:起初想的是foreach函数遍历,发现有一个真或有一个假并不会终止判断会继续执行完毕

遇到想要的结果就终止判断的有some和every函数 some函数是只要有一个符合条件就停止,every是只要有一个不符合条件就停止 。本代码选择的是some

let arrString = [
{id:1,value:1,def:'1',min:'3',max:'2'},
{id:2,value:2,def:'1',min:'0',max:'1'},
{id:3,value:2,def:'1',min:'4',max:'1'},
{id:4,value:5,def:''},
{id:5,value:1,def:'1',min:'1',max:'2'},
{id:6,value:1,def:'0',},
]
let flag = arrString.some(item=>{ //some有一个符合就停止 ,every 有一个不符合条件就停止
if(item.def''){
return true
}
if(item.def
'1'){
return item.value === '' || item.min == '' || item.max''
}
if(item.def
'0'){
return item.value === ''
}
})
console.log(flag)

posted @ 2023-02-08 19:00  张尊娟  阅读(73)  评论(0)    收藏  举报