数组中使用new Date().getTime()要格外注意,当你想获取不同值时,考虑到运行速度可能不会得到你想要的结果
a = [1,2,3,4,5,6];
let b = [];
a.forEach(item => {
b.push(new Date().getTime())
})
此时我们期望的结果可能时b里面的六个数组全都是不同的时间戳,但实际上
结果图.png
所有值都相同,这是因为计算机运行速度过快无法使用毫秒计算改变的值!
换一种写法,我们增加计算机中的计算时间,在数组中叠加一个循环如下:
a = [1,2,3,4,5,6];
let b = [];
a.forEach(item => {
for(let i = 0; i < 1000; i ++) {
console.log(i);
}
b.push(new Date().getTime())
})
显示如下结果
结果图.png
网友评论