我刚刚运行了一个非常简单的JavaScript 性能测试(不要问为什么)。测试声明了一个变量,但没有给它赋值:
我原以为与
上述结果来自在Chrome(版本13)中运行测试。在Firefox中运行产生的结果要接近我预期的结果(与
那么,我的问题是这是什么原因造成的呢?为什么Chrome似乎如此青睐与
以下是结果的快速参考截图:
var x;
然后比较将变量的值与null
和undefined
进行比较的速度,也就是:
var y = (x == null);
和 var y = (x == undefined);
.我原以为与
undefined
的比较速度会最快,但实际上离谱。与null
的比较速度远远超过其他方式,大约快80%。上述结果来自在Chrome(版本13)中运行测试。在Firefox中运行产生的结果要接近我预期的结果(与
null
相比,与undefined
的比较速度稍微更快一点)。那么,我的问题是这是什么原因造成的呢?为什么Chrome似乎如此青睐与
null
的比较?以下是结果的快速参考截图: