Javascript 为什么const比var慢?
我正在测试Javascript中Javascript 为什么const比var慢?,javascript,performance,constants,var,variable-declaration,Javascript,Performance,Constants,Var,Variable Declaration,我正在测试Javascript中const和var之间的性能差异,这时我注意到const比var慢 我为timeconst和var编写了一个脚本,并对它们进行了比较。它测试const是否快1000倍const的速度只有13%左右 函数执行时间(code){ var t0=performance.now() 代码() var t1=performance.now() 返回t1-t0 } 功能测试(){ var results=[0,0]//一,二-哪一个更快? 对于(变量i=0;i两个){ 结果
const
和var
之间的性能差异,这时我注意到const
比var
慢
我为timeconst
和var
编写了一个脚本,并对它们进行了比较。它测试const
是否快1000倍const
的速度只有13%左右
函数执行时间(code){
var t0=performance.now()
代码()
var t1=performance.now()
返回t1-t0
}
功能测试(){
var results=[0,0]//一,二-哪一个更快?
对于(变量i=0;i<999;i++){
var one=执行时间(函数(){
常数x='x'
})
var two=执行时间(函数(){
变量x='x'
})
如果(一个>两个){
结果[0]++
}否则{
结果[1]++
}
}
return((results[0] console.log(test())
一旦我运行了一些测试,正如评论中所建议的,我意识到性能可能会有所不同,并且我的计时方法有缺陷
JSBench:
因此,
const
和var
之间没有实时差异,可以考虑使用在线微基准工具(甚至是图书馆和在线小提琴)。1) 更容易共享/可比较2)减少微基准偏差。这里的计时方法看起来是有缺陷的,没有其他的考虑。我在这里运行了几个测试,结果不同,总是小于0.5%,所以看起来没有什么真正的区别。在那里建立一个链接到不同的代码,这样我(和其他人)就可以运行它-任何性能差异都是实现的产物。当我运行一个基准测试时,const的速度“更快”(SafariIOS);100对99.8/9。然而,有了如此小的时间主体和其他开销,我不会对结果施加太大的压力。我希望您的两个代码都得到了优化,因为它们什么都不做。此外,1000次运行对于预热优化编译器来说太少了。