我在学校有一项任务,我们应该从promt中获取一个文本字符串,然后让警报打印文本字符串10次。但我们必须使用for循环。但即使我阅读了涵盖此内容的所有页面,我似乎也无法使其工作。
function buttonAction7() {
var someMsg = prompt("Write something");
for(var i = 0; i < 10; i++){
someMsg+someMsg;
}
alert(someMsg);
}
答案 0 :(得分:5)
声明:
someMsg+someMsg;
实际上做任何东西,它只返回一个逻辑值。您可能希望将此值分配给某些内容,例如:
someMsg = someMsg + someMsg; // Notice assignment operator, we're now actually modifying the value of someMsg
如果您想要使用该消息构建一个字符串10次,那么您可能需要更多类似的内容:
var someMsg = prompt("Write something");
var msg = '';
for(var i = 0; i < 10; i++)
{
msg += someMsg + '\n'; // Add a line break after each iteration
}
window.alert(msg);
答案 1 :(得分:2)
如果我理解您的要求,您希望警报在同一警报窗口中背靠背显示10次字符串? (比如“写someWrite somethingWrite something ...”):
如果这是正确的,那么你的问题就是你的for循环中的计算。您只需将两个字符串添加到一起,但不对结果执行任何操作。您需要在每次循环迭代时将结果保存回someMsg变量,如下所示:
var someMsg = promt("Write something");
var output = "";
for(var i=0; i<10; i++) {
output = output + someMsg;
}
alert(output);
您可以看到每次迭代时output + someMsg的结果是如何保存回变量输出的。你也可以写下这样的简写:
output += someMsg;
答案 2 :(得分:0)
试试这个。
var someMsg=prompt("Write Something");
var i;
for(i=0;i<10;i++){
alert(someMsg);
}