Fra*_*ort 2 javascript v8 spidermonkey chakra
有人可以解释一下下面这两个函数之间有什么区别吗?
我想知道JavaScript引擎是否在这里进行某种纳米优化.
function withoutVar() {
return 'stackoverflow';
}
function withVar() {
var result = 'stackoverflow';
return result;
}
var a = withoutVar();
var b = withVar();
Run Code Online (Sandbox Code Playgroud)
一些引擎可以执行这样的优化.在谷歌关闭编译器肯定不会这样:
function withVar(){return"stackoverflow"}var a=withVar();
Run Code Online (Sandbox Code Playgroud)
速度几乎没有差异,但"优化"版本更短(因此客户端下载速度更快).以下是基准测试的结果:

您可以看到"平面"版本(没有变量声明)稍微快一些(但是看一下每秒的操作 - 这是一个在速度方面甚至不值得考虑的优化).
| 归档时间: |
|
| 查看次数: |
257 次 |
| 最近记录: |