js for 迴圈 和 for in 效能差異

2021-09-22 21:10:39 字數 387 閱讀 4284

結果: 

當資料比較大的時候 效能差別還是很明顯的;

原因主要有以下幾點: 

1.for...in的key是string型別,而非數字,它包含當前屬性的名稱或當前陣列元素的索引,有轉換過程,因此開銷比較大;但是for迴圈的i是number型別,開銷較小。

2.for-in是用來迭代物件的屬性或陣列的每個元素,它需要窮舉物件的所有屬性,包括自定義的新增的屬性也能遍歷到,而for則是通過number遍歷,因此開銷較小。因此,for-in 大多時候用來遍歷物件,而非遍歷陣列,遍歷陣列建議用for。

js for迴圈與for in迴圈的區別

for迴圈可一遍歷陣列,而for in迴圈可以遍歷陣列和物件 使用for in迴圈會將array當成物件遍歷,而array的訪問速度明顯比object要快。所以使用for迴圈遍歷陣列比for in迴圈遍歷快。for迴圈遍歷的是索引陣列,通過索引來呼叫,i的返回值是number型別 而for in迴圈...

for in遍歷和for 迴圈

在做收藏功能的時候,使用的是把資料儲存到nsuserdefaults 中。過程是,現將要儲存的資訊用自定義的乙個model 儲存,再用nsmutablearray 把model 新增到陣列中,把陣列儲存到 nsuserdefaults中,使用的方法是 nsuserdefaults user nsus...

js for迴圈例項

1.求1 100的寄數和?2.奇數求和 var ppt 0 for var i 1 i 100 i 2 2.求1 100的偶數和 var num 0 for var i 0 i 100 i 2 document.write 偶數和 num 3.總和 var num1 0 for var i 0 i ...