循环遍历对象数组并检查条件



我有一个像这样的对象数组

list = [
{
"label" : "whatever",
"value" : "value 1"
},
{
"label" : "whatever",
"value" : "value 2"
},
{
"label" : "Required scenario only",
"value" : "value 3"
},
{
"label" : "whatever",
"value" : "value 4"
},       
]

我正在运行一个有条件的循环,我想执行一些代码只用于一个场景,称为"只需要的场景",其余的所有场景只运行一次不同的代码,它不应该执行3次,因为每个循环执行

for(i=0; i< list.length; i++) {
if(list[i].label === 'Required scenario only' ) {
//execute some code
} else {
// execute code for 1 time for rest  of the labels i.e for all 'whatever' scenarios
} 
}

我该怎么做?

如果您只是在检查是否存在一个带有label =" Required scenario only "的对象那么我就用Array.some():

list = [{
label: "whatever",
value: "value 1"
},
{
label: "whatever",
value: "value 2"
},
{
label: "Required scenario only",
value: "value 3"
},
{
label: "whatever",
value: "value 2"
},
]
if (list.some(l => (l.label == "Required scenario only"))) {doSomething();}
else {doSomethingElse();}
function doSomething() {console.log("Do Something");}
function doSomethingElse() {console.log("Do Something Else");}

最新更新