字典和Math.pow(10,5)长度的数组运行结果是
第一次使用console.time的时候会多花时间: 0.221ms
map: 0.007ms
array取第一个值: 0.111ms
array取最后一个值: 0.180ms
array取c第一个值: 0.003ms
array取c最后一个值: 0.172ms
array的for循环: 4.671ms
array的forEach循环: 2.355ms
array的map循环: 18.264ms
array的sort循环: 2.756ms
可以看出获取map的速度是相当快滴。
var a = {
'test': 1
};
var b = [];
var d = Math.pow(10,5);
for (let i = 0; i < d; i++) {
b.push(i);
}
var c = [];
for (let i = d; i > 0; i--) {
c.push(i);
}
console.time('第一次使用console.time的时候会多花时间');
// 第一次使用console.time的时候会多花时间
console.timeEnd('第一次使用console.time的时候会多花时间');
console.time('map');
a.test;
console.timeEnd('map');
console.time('array取第一个值');
b.indexOf(0)
console.timeEnd('array取第一个值');
let aa = b.length - 1;
console.time('array取最后一个值');
b.indexOf(aa)
console.timeEnd('array取最后一个值');
console.time('array取c第一个值');
c.indexOf(aa)
console.timeEnd('array取c第一个值');
console.time('array取c最后一个值');
c.indexOf(0)
console.timeEnd('array取c最后一个值');
console.time('array的for循环');
for (let i = 0; i < b.length; i++) {
}
console.timeEnd('array的for循环');
console.time('array的forEach循环');
b.forEach(() => {
});
console.timeEnd('array的forEach循环');
console.time('array的map循环');
b.map(() => {
});
console.timeEnd('array的map循环');
console.time('array的sort循环');
b.sort(() => {
});
console.timeEnd('array的sort循环');