for
數組迭代的方法之間的性能差異。 我們將證明,為了速度,香草$.each
循環,尤其是那些具有可變緩存的循環,效果明顯優於for
。 如JSperf基準測試所示,這可能會導致高達84%的速度提高(省略了,但易於搜索)。
$.each
>用於可變緩存的循環(最快):
$.each(myArray, function() { let currentElement = this; // ... your code using currentElement ... });
對於無可變緩存的循環:
const len = myArray.length; for (let i = 0; i < len; i++) { let currentElement = myArray[i]; // ... your code using currentElement ... }
>預定的長度嘗試:(與緩存版本相似的性能)
for (let i = 0; i < myArray.length; i++) { let currentElement = myArray[i]; // ... your code using currentElement ... }
常見問題(常見問題解答):
>
let len = myArray.length; let i = 0; for (; i < len; i++) { let currentElement = myArray[i]; // ... your code using currentElement ... }
循環之間進行選擇的關鍵差異和注意事項的摘要:>
$.each
功能:for
迭代在數組和對像上,提供簡潔的語法。
性能:$.each
循環(尤其是使用可變緩存)通常由於功能降低而更快。 較大的數據集使用差異更為明顯。 for
>可讀性: 可以改善簡單迭代的代碼可讀性。 for
循環更明確。
>打破循環:$.each
>回調打破了循環。 for
loops使用
在
false
$.each
> nodelist/htmlCollection:for
>與NodeLists和HTMLCollections一起使用,但break
>是指dom元素,而不是jQuery對象。 用
本機
:
>$.each
>對象迭代:this
兩者都可以在對像上迭代。 $(this)
>
稀疏數組:forEach
在稀疏數組中跳過未定義的索引,而> loops也包括它們。 forEach
>
鏈接:$.each
不像其他jQuery方法那樣支持鏈接。
循環。 對於較小的數據集或最重要的可讀性時,jQuery'sfor
更方便。 將JavaScript的本地$.each
視為JQueryforEach
的更快替代品。
以上是速度問題jQuery。的詳細內容。更多資訊請關注PHP中文網其他相關文章!