为了账号安全,请及时绑定邮箱和手机立即绑定

deltaTime="NaN"

在chrome下用断点运行,发现在

this.y[i] -= XXX * deltaTime; 

这一步的时候总是出现deltaTime为NaN的情况,不知道是怎么回事

正在回答

5 回答

deltaTime应该在前面定义

function game(){

init();

lastTime = Date.now();

deltaTime = 0;

gameloop();


}

如果在这里没有定义,那么lastTime就是undefined,那么下面的

deltaTime = now -lastTime;

就会是时间戳减去undefined,所以就是NAN,就会一直NAN

function gameloop(){

window.requestAnimationFrame(gameloop);     //2

var now =  Date.now();

deltaTime = now -lastTime;

lastTime = now;

drawBg();

sea.draw();

fruit.draw();

}



可以在最开始的位置打印deltaTime,lastTime,这几个变量,看看自己的代码具体是哪没有赋值


2 回复 有任何疑惑可以回复我~

一样的问题,求解决!

0 回复 有任何疑惑可以回复我~
#1

大空翼God 提问者

可以尝试用chrome浏览器 开发者模式Source面板 断点看看是不是读到了变量数据
2015-12-16 回复 有任何疑惑可以回复我~
我现在也出现这个问题,你们现在解决了吗
0 回复 有任何疑惑可以回复我~

我也有这个问题!主要是因为加了 this.l[i] = 0.05*deltaTime后运行程序不出现orange的图片……

0 回复 有任何疑惑可以回复我~

对不起,大家忽略这一条。检查发现是代码问题。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

deltaTime="NaN"

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信