javascript - 如何使 if 语句只为真一次?

标签 javascript

如何使 if 语句仅运行一次。我正在用 javascript 制作一个游戏,一旦用户得分为 5,我想在数组中添加一个新的敌人。我遇到的问题是,一旦 if 语句为真,它就会一遍又一遍地添加新的敌人,直到整个屏幕都被敌人覆盖。我希望它在分数为 5 时仅添加 1 个新敌人,然后在分数为 10 时添加另一个,依此类推。我想不出有什么方法可以实现这一点。谢谢。

Sketch.js

   var score = 0;

   //3 three enemies once game starts
   function StartingEnemies() { 
      for (var i = 0; i < 2; i++) {
        enemies[i] = new BasicEnemy();
      }
   }


   //add new enemies into the array
   function spawnNewEnemies() {
     enemies.push(new BasicEnemy());
   }


   if (score == 5) {
     spawnNewEnemies();
   }

最佳答案

var addNew=true;
if (score == 5 && addNew) {
  spawnNewEnemies();
  addNew=false;
}

如果您在函数内部运行代码,请确保在某处声明 addNew ,以便它将在调用之间持续存在。

关于javascript - 如何使 if 语句只为真一次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42896231/

相关文章:

javascript - 在 JavaScript 中使用 switch 语句编写 if..else 语句

javascript - 仅打印文本框中字符串中的元音

javascript - 无法访问动态创建的 Javascript div

javascript - 如何使用 dropzone js 进行验证

javascript - 为什么 ES 6's Map.forEach iterate with ' value, key' 而不是 'key, value' ?

php - Symfony2 Controller 和 Javascript 参数传递

javascript - 在运行时检测 javascript 文本或元素溢出

javascript - 在别人的 Javascript 之后使用 jQuery

javascript - 在 elm 中绘制点列表

javascript - Kendo UI 中的嵌套数据源