当数组长度满足时循环不停止

时间:2015-02-24 15:45:20

标签: javascript arrays

我设置用户输入数组长度。然后提示他们将数字添加到数组以供let使用。问题是提示被卡在无限循环中,即使我认为我设置了while while循环,但显然没有。这是代码:

        function startProcess() {
            var arraySize = document.getElementById("txtSize").value;

            alert("the value is " + arraySize);

            var myArray = arraySize;

            do {
                parseInt(prompt("Please enter a number").value);
            } while (myArray <= arraySize);
        }

如果我可以让这一件工作,那么其他一切都是错误的。感谢您的时间和专业知识。

2 个答案:

答案 0 :(得分:6)

在这一部分:

var myArray = arraySize;

do {
     parseInt(prompt("Please enter a number").value);    
} while (myArray <= arraySize);

您将myArray设置为arraySize,然后运行循环,而myArray(已设置为arraySize)低于或等于arraySize ,显然,它将永远是平等的。

答案 1 :(得分:-1)

.value结果是字符串而不是数字。您需要将其转换为整数 用parseInt()

 function startProcess() {
            var arraySize = document.getElementById("txtSize").value;

            alert("the value is " + arraySize);




            var myArray =parseInt(arraySize);

                do {parseInt(prompt("Please enter a number").value);

            } while (myArray <= arraySize);




            }