我只是想知道为什么迭代一个数组为空它比填充数组慢。
for (var items=9999,arr=[],arr2=[],i=0; i<items; ++i)
arr.push(true);
arr2[items-1] = true;
arr.length == arr2.length; // true
迭代填充:
for (i=0; i<items;i++) {
if (arr[i] !== undefined)
arr[i];
} //107,600 Ops/sec
迭代空:
for (i=0; i<items;i++) {
if (arr2[i] !== undefined)
arr2[i];
} //689 Ops/sec
有人可以给我一个解释吗? http://jsperf.com/iterating-for-loop-normal-and-undefined