问题的现象是if里面两个参数比大小,true才执行一个函数,可是false了也执行了,代码实在太简单了所以一点头绪都没有。
下面就是代码,可以看到我打印了很多东西,我说明一下:
1)console.log(this.timer) 这个打印出来发现都是在稍微超过1的时候执行的;
2)console.log(this.randStarNum()) 这个我设置的是1~5之间的随机整数,打印出来的结果也的确如此,所以只是比1大一点点是不应该进来的,但我的确眼睁睁的看着在this.timer是类似1.1329370000000345的数字,且randStarNum打印出来是2,3,4,5这些数字,
3)console.log(this.timer>this.randStarNum),并且,这一条的打印结果还是false。。。。这。。。我。。。该怎么想
4)console.log(this.timer),最后的这个打印,是timer不断的从0到1.x后归零的过程,这是因为我在spawnNewStar那里把timer置零的关系
所以。。。小白我无能为力了,大佬们帮帮忙吧
update: function (dt) {
if (this.timer > this.randStarNum()){
console.log(this.timer);
console.log(this.randStarNum());
console.log(this.timer>this.randStarNum);
this.spawnNewStar();
return;
};
this.timer += dt;
console.log(this.timer);
},