【发布时间】:2015-07-06 05:48:17
【问题描述】:
我需要在我的 for 循环中使用 if 语句替换一个值。确切的说明是:
将<script></script> 元素添加到<head> 部分
首先使用Math.random() 选择介于 1(含)和 110(含)之间的随机整数的页面
功能。然后,您的代码应将每个整数从 1 到(但不包括)随机整数写入
除数字 29、71 和 105 之外的页,应拼出(即“二十九”、“七十一”、
“一百五”)。您需要使用 while 循环或 for 循环进行迭代和条件语句
打印特殊情况。
示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 二十九 30 31 32 33 34 35
到目前为止,我的脚本已经有了这个
<script>
var display = Math.floor(1 + Math.random() * 110);
for(var i=1; i < display; i++)
document.writeln(i);
if (i >= 29)
{
//[29] = "twenty-nine"
document.write(i[29].replace(29, "twenty-nine"));
}
if (i >= 71)
{
document.write("seventy-one ");
}
if (i >= 105)
{
document.write("one-hundred-five ");
}
</script>
当数字不在指定数组中时,我不知道如何替换它们。
【问题讨论】:
-
您缺少一些花括号
{}来定义for循环的主体。为什么>=?该任务显然符合其要求“......除了数字 29、71 和 105......”而不是“......超过 29 的每个数字......”;) -
感谢有道理!感谢您的帮助。我的逻辑是错误地认为只有在选择的随机整数是 29、71 或 105 时才会显示文本。如何删除数字 29、71 和 105 以替换为文本?我使用了花括号并将我的 >= 更改为 == 并且它仍然包含数字
-
正如 Arun 在更新您的评论时所写:)
标签: javascript if-statement for-loop