【发布时间】:2018-01-03 12:36:16
【问题描述】:
我对 JavaScript 很陌生,所以请不要因为“无知”的问题攻击我。
在我当前的代码中,我陷入了一个似乎是无限循环(但不是完全无限)的状态,最终在通过我的所有提示 5 次后结束。
var authors = [];
for(var authorName = 0; authorName < books.length; authorName++)
{
authors[0]=parseFloat(prompt("Who wrote War and Peace?"));
authors[1]=parseFloat(prompt("Who wrote Huckleberry Finn?"));
authors[2]=parseFloat(prompt("Who wrote The Return of the Native?"));
authors[3]=parseFloat(prompt("Who wrote A Christmas Carol?"));
authors[4]=parseFloat(prompt("Who wrote Exodus?"));
}
我不确定我是否只是没有正确设置数组或 for 循环,或者我需要做什么才能让它通过并填充数组。
请记住,我是 JavaScript 的新手,所以最基本、初学者、简单的答案将是最好的。到目前为止,我只是想在基础知识上站稳脚跟。 (:
【问题讨论】:
-
你有一个
for循环遍历你所有的“书”。对于每本书,您的循环会提出 5 个问题。 -
另外,当您的问题似乎是在询问姓名而不是数字时,为什么在调用
prompt()的结果中使用parseFloat()? -
您的...问题中没有包含问题。
-
不能解决您的问题,但您的命名约定有些奇怪。你有一个变量
authorName,它似乎是一个int。为什么将 int 称为authorName? -
哦,有道理。 @Pointy,我只是出于通常使用数字的习惯而这样做。我什至没有意识到我正在这样做。一个要求是我应该有包含书名的提示。这就是我对如何使它工作感到困惑的地方。 var books = [“战争与和平”、“哈克贝利·费恩”、“土著归来”、“圣诞颂歌”、“出埃及记”];是我在最初发布之前所拥有的。我应该有第一个数组书籍,然后使用 for 循环填充第二个数组作者,即 pop。按提示。
标签: javascript arrays infinite-loop