js迴圈遍歷性能

2022-03-19 11:51:11 字數 652 閱讀 9609

定length for迴圈 (有length)

不定length for迴圈(使用陣列length)

不定length for迴圈(判斷陣列length是否存在)

foreach(array自帶,對某些不適用例如:nodelist)

forof(es6)

mapforin

結論:

普通for迴圈才是最優雅的

(ps:以上所有的**都只是進行空的迴圈,沒有再迴圈內部執行**,僅僅是分析各自迴圈的時間而已)

分析結果1

以下截圖中的資料是,在chrome (支援es6)中執行了100次後得出的結論(每次執行10次,一共10個迴圈,得到的分析結果) 

可以看出,forin迴圈最慢。優化後的普通for迴圈最快

分析結果2

以下截圖資料是,在chrome (支援es6)中執行了1000次後得出的結論(每次執行100次,一共10個迴圈,得到的分析結果) 

map表遍歷性能

最近收到很多對資料庫查詢壓力過大的反饋,由於我的程式只是從資料庫讀取記錄,和進行緩衝 所以考慮通過延長應用程式內部的快取時間 增大快取量,使程式從快取中讀取資料,從而解決訪問資料庫過於頻繁的問題,從而降低資料庫讀取壓力。程式中的快取資料使用stl中的map表儲存,快取的資料量比較大,單個物件占用50...

Vector遍歷性能對比

偶然發現,遍歷vector時,使用兩種看上去沒什麼差別的方法,效能上卻有很大的差異。include include class cpoint int vectorread 0 const cpoint arr,size t size return result int vectorread 1 co...

js迴圈遍歷

方式一 var arr 1,2,3,4,5 for let i 0 i方式一利用for迴圈來遍歷陣列的缺點就是 不夠簡潔。下面介紹乙個寫法更加簡潔的方式。方式二var arr 1,2,3,4,5 arr.foreach function value,index 利用foreach迴圈 量少了很多,寫...