Jam*_*Lam 2 javascript performance for-loop nested-for-loop
var t1 = new Date().getTime()
for (let i = 0; i < 100; i++) {
for (let j = 0; j < 1000; j++) {
for (let k = 0; k < 10000; k++) {
}
}
}
var t2 = new Date().getTime()
console.log('first time', t2 - t1)
for (let i = 0; i < 10000; i++) {
for (let j = 0; j < 1000; j++) {
for (let k = 0; k < 100; k++) {
}
}
}
var t3 = new Date().getTime()
console.log('second time', t3 - t2) Run Code Online (Sandbox Code Playgroud)
如您所见,上面两个 for 循环的执行时间似乎相同。但实际上,第二个循环的执行时间比第一个循环多。引擎盖下有什么不同?
在第一个循环中,您正在执行:
在第二个循环中,您正在执行:
第二个循环有 9909900 多个变量初始化,因此预计运行时间更长。