2010-09-13 97 views
4

我正在優化我的html5遊戲引擎的性能問題,我想知道渲染過程需要多少時間。所以我得到了一堆渲染函數。每個渲染函數都會分離出不同的部分。比如塊,玩家等爲什麼我的計時代碼總是返回0?

function gameRender() { 
    var d1 = new Date(); 
    var firstTime = d1.getTime(); 

    // render stuff 

    var second = d1.getTime(); 
    console.log("Renders took " + (second-firstTime)); 
} 
+0

如果您使用Firefox進行調試,則它內置了定時器http://getfirebug.com/wiki/index.php/Console_API#console.time.28name.29,因此無需編碼它。 :) – epascarello 2010-09-14 05:01:49

回答

5

嗯,我得到了這個問題:在谷歌一點點搜索後,我意識到,我必須使用第二次約會對象爲第二個變量,所以這裏是一個固定的版本:

function gameRender() { 
    var d1 = new Date(); 
    var firstTime = d1.getTime(); 

    // render stuff 

    var d2 = new Date(); 
    var second = d2.getTime(); 
    console.log("Renders took " + (second-firstTime)); 
} 
+0

如果您不使用Date對象進行其他操作,也可以使用「new Date()。getTime()」。 – Turnor 2010-09-13 22:08:40

+0

@Turnor:你也不需要'getTime'。當對這些對象進行操作(如加法或減法)時,將調用'valueOf'方法。 Date對象的'valueOf'方法返回與'getTime'相同的值。 – 2010-09-13 22:18:03

相關問題