roh*_*ohn 1 javascript if-statement while-loop
我在许多书籍的帮助下学习JavaScript.在其中一个中,我想出了一个显示几个标志的脚本,然后点击它们随机更改它们:
var myImages = new Array("usa.gif","canada.gif","jamaica.gif","mexico.gif");
function changeImg(that) {
var newImgNumber = Math.round(Math.random() * 3);
while (that.src.indexOf(myImages[newImgNumber]) != -1)
{
newImgNumber = Math.round(Math.random() * 3);
}
that.src = myImages[newImgNumber];
return false;
}
Run Code Online (Sandbox Code Playgroud)
它有一个while循环,以确保当你点击一个标志时,你不会得到同一个标志.HTML中的其余代码如下所示:
<body>
<img name="img0" src="usa.gif" border="0" onclick="return changeImg(this)" />
<img name="img1" src="mexico.gif" border="0" onclick="return changeImg(this)" />
</body>
Run Code Online (Sandbox Code Playgroud)
现在,我的问题是,如果我使用IF语句而不是while循环,显然代码的工作原理相同.在这个特定的例子中,为什么使用while循环而不是IF?谢谢.
该while陈述基本上翻译为"当我选择的数字与当前图像标签中已有的图像的索引匹配时,继续".因此,虽然if语句可能在大多数情况下都有效,但是0当您单击时,您的随机数生成器可能会连续多次生成该数字img0.while确保最终你会得到一个新的形象.
| 归档时间: |
|
| 查看次数: |
58 次 |
| 最近记录: |