我是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的新手,所以最基本的、初学者的、简单的答案将是最好的。我只是想在目前的基础上站稳脚跟。(:
发布于 2017-07-28 01:05:42
我想你在找这个:
var bookNames = [
"War and Peace?",
"Huckleberry Finn?",
"The Return of the Native?",
"A Christmas Carol?",
"Exodus?"
];
for(var authorName = 0; authorName < books.length; authorName++)
{
authors[authorName]=parseFloat(prompt("Who wrote " + bookNames[authorName] + "?"));
}这只会触发5次,这是一个更好的方式来做你想做的事情。此外,我会将authorName的名称更改为更好地描述它是什么。
发布于 2017-07-28 01:05:26
for块中的每一行代码都会按照指定的次数运行,在本例中是books.length次数。每次循环运行时,循环计数器(在本例中为authorName )将作为变量及其当前值可用,在本例中,它将在5次迭代中取值0到4。
for(var authorName = 0; authorName < books.length; authorName++)
{
authors[authorName] = prompt("Who wrote " + books[authorName] + "?");
}https://stackoverflow.com/questions/45356582
复制相似问题