ネタ切れ感がありますが気になったので「if in」と「hasOwnProperty」はどっちが早いか調べてみた。
100万回ルーープ。
var sp:Sprite = new Sprite();
var sTime:uint;
var eTime:uint;
var n:uint;
sTime = getTimer();
for(n = 0; n < 1000000; n++)
{
if( "x" in sp)
{
}
}
eTime= getTimer();
trace(eTime - sTime);
sTime = getTimer();
for(n = 0; n < 1000000; n++)
{
if(sp.hasOwnProperty("x"))
{
}
}
eTime= getTimer();
trace(eTime - sTime);
結果
if in = 108 mshasOwnProperty = 302 ms
まぁどっちでもって感じ。
プロトタイプのプロパティを調べる必要がないからhasOwnPropertyが早いかと思ったんだけどなぁ。
メソッドだから?コードの流れが複雑なのか??
まぁいいや。
if in 超便利!!
2009/3/25 - 0:23 | Comments (0)
Category : FLASH AS3


コメントはまだありません。