gpt4 book ai didi

javascript - 如果有多个实例,则执行一次方法

转载 作者:行者123 更新时间:2023-11-28 08:01:10 25 4
gpt4 key购买 nike

我有一个问题,假设我们有一个 500 y 高的板,并且我们有一个下落的 block ,它捕获 y 并将其移动到它自己的变量,将静态 y 更改为动态 y,现在是下落 block 的 y,如果当该 block 到达棋盘上的 350 y 时,它只执行 if 语句中的代码一次。我遇到的问题是它对 350 以下的每个 y 执行此操作,一直到 500。

下面只是我所拥有的一小部分,在此之前默认 y 设置为 135,dy 设置为 -1;然后在函数内将 y 设置为 y-dy,并且方 block 正在下落。在 if 语句中,它检查是否超过了某个点,然后记录一条消息,但问题是,对于每个 y 超过 351 的点,它都会记录该消息,我只想让它执行一次,有没有办法我可以使用 == 或者我应该将变量设置为 y 或类似的东西。

这是代码。

var y = y-dy;
curVal = 0;
ctx.drawImage(block,x,y,50,50);

if(y > 351 && x < 64){
console.log('RED!');
//set the value of the block here
curVal = curVal + randNum;
console.log(curVal);
}

如果我做不到,有没有办法让事件发生一次?

最佳答案

声明一个全局变量:

var flag = true;

并像这样使用它:

if(y > 351 && x < 64 && flag){
flag = false;
...

这将确保 if block 最多执行一次。

关于javascript - 如果有多个实例,则执行一次方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25361408/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com