2011-12-07 54 views
1

只要布尔值设置为true,我想离开每个循环。为每个循环留下一个

for each (xmlEvent in arEvents) 
{ 
    var xmlEvent:XMLList = XMLList(event); 
    if(xmlEvent.id == artistEvent.id) 
    { 
     boolExists = true; 
    } 
} 

我试过休息等等,但是这一切都不起作用。

+2

中断应该起作用,你是在'boolExists = true'之前还是之后'中断'?它应该在设置变量之后出现。 – kylex

+0

你可以使用包含break语句的“updated”代码更新问题吗?这样我们可以看到什么可能导致break语句不被评估。 – chrsmrtn

回答

6

使用break操作

for each (xmlEvent in arEvents) 
{ 
    var xmlEvent:XMLList = XMLList(event); 
    if(xmlEvent.id == artistEvent.id) 
    { 
     boolExists = true; 
     break; 
    } 
} 
2

为什么不使用some()方法?它会为你处理所有这些。

boolExists = arEvents.some(
    function (xmlEvent:*, index:int, arr:Array):Boolean { 
    return xmlEvent.id == artistEvent.id; 
    }); 

注意:匿名函数仅用于简洁起见。


为了清楚起见,将返回some()方法达到只在阵列超过迭代,直到返回true中的第一项,在该点的迭代结束,并且结果(真)。

相关问题