JS 陣列求和方法與效能比較

2022-07-30 08:33:11 字數 776 閱讀 8196

function sum(arr)
function sum(arr) 

return res

}function sum(arr)

function sum(arr) 

}

function sum(arr)
執行效率

引數生成
const oriarr = array.from(new array(100000).keys())
執行測試
console.time('陣列求和方法耗時測試')

sum(oriarr)

console.timeend('陣列求和方法耗時測試')

統計

ms / 1k

ms / 10k

ms / 100k

eval 函式//

30.312744140625

for 迴圈//

0.14599609375

foreach 迴圈//

2.650146484375遞迴1

/卡死reduce//

2.1220703125

以上統計也就圖一樂,實際執行耗時和電腦配置相關,不過也大致能得出乙個結論,for 迴圈執行效率最高,遞迴最差,而且會產生大量堆疊導致報錯甚至卡死

js 陣列求和,多種方法,並比較效能

可以借用下面12種方法對陣列求和,建立乙個長度為10w的陣列,進行測試 具體實現 首先建立乙個龐大的陣列 var aarr for var i 0 i 1000000 i console.log every求和 sum console.timeend every求和時間 filter var sum...

找到陣列中某個元素方法效能比較

const arr for let i 0 i 1000000 i console.time indexof arr.indexof ahdgd10000 console.timeend indexof indexof 0.0400390625ms console.time includes arr...

srand 與 rand效能比較

include include include int main gettimeofday tv,null long us1 tv.tv usec std cout 測試1結束,時間戳 us1 時間差 us1 beginus std endl for int i 0 i 1000 i gettime...