首页 > 解决方案 > 用于循环的 Java 脚本

问题描述

我希望循环运行直到提示的值,但它会无限。需要帮忙。这是我的 javascript 代码: 我的代码

var round = prompt("enter text");
var roundno = round;

var images_arr = ["../img/paper.png", "../img/stone.png", "../img/sisor.png"];
var size = images_arr.length
function myFunction() {
for (var i = 0; i = roundno; i + 1) {
    console.log(i);
    setInterval(function () {
        var x = Math.floor(size * Math.random())
        $('#random').attr('src', images_arr[x]);
    }, 1500);

    setInterval(function () {
        var sound = new Audio("../audio/audio.mp3");
        sound.play();
    }, 3000);

    if (i = roundno) {
        break;
     }
    }
  }

标签: javascriptfor-loopsetinterval

解决方案


你没有增加i

改变

i + 1

到以下之一:

  • i++
  • i += 1
  • i = i + 1

您还需要if在循环结束时修复语句。您要检查是否i等于roundno。而不是使用赋值运算符来分配to=的值,使用or进行相等性检查。roundnoi=====

if (i == roundno) {
   break;
}

您在循环条件中也犯了同样的错字。将循环条件更改为i == roundno并删除if循环结束时的语句,因为循环条件固定,if循环内的语句是不必要的。

for (var i = 0; i == roundno; i++) {
   // code
}

推荐阅读