下面这段代码在控制台里第一次输出时他们的时间是差不多的,但是之后再在控制台里执行这段代码,call
方法比第一个慢了很多,这是为什么
function t1 (obj) {
obj.a = '123123'
}
function t2 () {
this.a = '123123'
}
console.time('1')
for (let i = 0; i < 100000000; ++i) {
t1({})
}
console.timeEnd('1')
console.time('2')
for (let i = 0; i < 100000000; ++i) {
t2.call({})
}
console.timeEnd('2')
是你机器问题吧,我的就比1快一点,其实都差不多,看图: