【问题标题】:Why does my timing code always return 0?为什么我的计时码总是返回 0?
【发布时间】:2010-09-14 06:05:35
【问题描述】:

我正在优化我的 html5 游戏引擎以解决性能问题,我想知道渲染过程需要多少时间。所以我得到了一堆渲染函数。每个渲染函数都渲染游戏的独立部分......例如块,玩家等

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

    // render stuff

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

【问题讨论】:

标签: javascript html canvas timing


【解决方案1】:

嗯,我遇到了问题:在谷歌上搜索了一下,我意识到我必须为第二个变量使用第二个日期对象,所以这里是一个固定的版本:

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));
}

【讨论】:

  • 如果您没有将 Date 对象用于其他任何事情,您也可以使用“new Date().getTime()”。
  • @Turnor:你也不需要getTime。在对这些对象执行操作(如加法或减法)时,将调用 valueOf 方法。 Date 对象的 valueOf 方法返回与 getTime 相同的值。
猜你喜欢
  • 2021-01-24
  • 1970-01-01
  • 1970-01-01
  • 2016-09-16
  • 2020-05-25
  • 2013-02-26
  • 2013-06-25
  • 1970-01-01
相关资源
最近更新 更多