簡體   English   中英

for(var x in array)和for(var x = 0,y = array.length; x之間的性能差異

[英]Performance's difference between for (var x in array) and for (var x=0, y= array.length; x<y; x++)

當我想loop通過array ,並添加每個后面的字符串element

我可以

for(var x in array){
 array[x] += "string";  
}

要么

for(var x, y = array.length; x<y; x++){
 array[x] += "string";  
}

但是,這兩個for loops之間在性能方面什么區別嗎?

建議您不要使用for ... in來遍歷數組。

為什么在數組迭代中使用“ for ... in”是個壞主意?

您應該使用for ... in來僅遍歷對象屬性。

通常, for...in的速度要慢一些,因為它作為一個公共對象訪問數組,而經典的for cycle不需要整理array所有屬性即可執行其任務。

請記住,現代瀏覽器對數組進行了特殊的優化,但是如果將它們視為通用對象,則無法利用它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM