<script>
function f(){
var t=document.getElementById("t");
var g=t.asdfg;
var a=new Date().getTime();
for(var x=0;x<100000000;++x){
if(g===undefined);
//if(g);
}
var b=new Date().getTime();
alert(b-a);
}
</script>
<body onload="f();">
<input id="t"/>
</body>
在Firefox
if(g)
慢於if(g===undefined)
。我想知道有沒有人知道有什麼好的解釋爲什麼是這種情況?仿形`如果(x)的``VS如果(X ===未定義)`
在Chrome if(g)
比if(g===undefined)
更快。我想知道有沒有人知道有什麼好的解釋爲什麼是這種情況?
我並不是說我們應該用一個比其他..我只是感興趣的理論
可以說,不同的瀏覽器有不同的實現,但任何理論在任何瀏覽器將是值得的答案
對於這樣的基準,您可能需要使用http://jsperf.com/(我不是下屬,只是一個風扇)。 – Giacomo 2011-06-17 09:42:04