<!DOCTYPE html>
<html>
<head>
<title>乘法表</title>
<meta charset="utf-8">
<script type="text/javascript">
function multiX(x) {
var str = "";
for (var i = 1; i <=9; i++) {
document.write(x+" * "+i+" = "+x*i+"</br>")
}
}
var number1;
do{
number1 = parseFloat(prompt("please input a number",""));
if (!isNaN(number1)) {
multiX(number1);
} else {
alert("please input a number");
continue;}
} while (number1 == -1)
</script>
</head>
<body>
</body>
</html>
Tout d'abord, la fonction
prompt()
renvoie une valeur. Cliquez sur Annuler pour renvoyernull
, puis cliquez sur OK pour renvoyer les informations de chaîne. Ensuite, les valeurs possibles denumber1
sontnull
ou une chaîne.Ensuite,
parseFloat()
analyse un paramètre de chaîne et renvoie un nombre à virgule flottante.prompt()
函数返回值,点取消返回null
,点确定返回字符串信息。那么number1
可能的值是null
或是字符串。然后,
parseFloat()
的作用是解析一个字符串参数并返回一个浮点数。接下来的
🎜Leif...else...
没有对number1
进行任何改变。那么number1
依然是NaN。到了判断循环条件,
while(number1 == -1)
显然是当number1
值为-1的时候循环才继续。可见循环条件并不符合,所以
do...while
if...else...
suivant n'apporte aucune modification aunuméro1
. Alorsnumber1
est toujours NaN.Quand il s'agit de juger la condition de la boucle,
while(number1 == -1)
évidemment, la boucle continuera lorsque la valeur denumber1
est -1.On peut voir que les conditions de la boucle ne sont pas remplies, donc la boucle
do... while
ne s'exécute qu'une seule fois et se termine. 🎜