2017-08-30 109 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