2017-08-30 116 views
2

我有一个对象mobile_specs其中有几个字段,如设备名称,品牌,相机。 我环路虽然mobile_specs对象,这样我就可以打印表格的形式两个移动的规格:如何在JavaScript中打破foreach循环?

var i=0; 
Object.keys(mobile_specs).forEach(function(key) { 
         if(i==5) 
         { 
         break; 
         } 
         var mobile1=mobile_specs.[key]; 
         var mobile2=mobile_specs.[key]; 
         alert(mobile1 + " " +mobile2); 
         i++; 
       }); 

但上面的代码给我一个错误是:

Illegal break statement 

如何当我= 5时,我可以打破我的循环?

任何帮助表示赞赏。

+2

而不是'break'使用'return'你不能在技术上脱离forEach,否则使用'for'。 –

+1

[除了抛出异常,无法停止或破坏forEach()循环。](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/ forEach) – litelite

+1

请注意,在这种情况下使用计数器没什么意义,因为对象的属性没有排序。这意味着根据您使用的引擎/浏览器,您可能会有不同的前五个输出。 – sp00m

回答

2

除了抛出异常外,没有办法停止或破坏forEach()循环。我认为forEach不适合你的工作,用一个简单的循环代替

+0

https://stackoverflow.com/questions/2641347/how-to-short-circuit-array -foreach样叫破 – Naidu