从提示中获取循环的所有起点和终点
Get all of the starting and endpoints of a loop out of prompt
为什么会这样:
<html>
<title> JavaScript Tutorial 1
</title>
<body>
<script language = "javascript">
var a, b, c, d, j, k, sum;
// a = window.prompt("Enter a Number");
b = window.prompt("Enter a Number");
c = window.prompt("Enter a Number");
d = window.prompt("Enter a Number");
a = 5;
//b = 15;
//c = 1;
//d = 8;
sum = 0;
for (j = a; j <= b; j++) {
for (k = c ; k <= d ; k++) {
sum += j * j * k;
}
}
// document.write("<br>")
document.write(sum);
</script>
<noscript>
<p> You have JavaScript Turned Off <p>
</noscript>
</body>
</html>
虽然这不是:
<html>
<title> JavaScript Tutorial 1
</title>
<body>
<script language = "javascript">
var a, b, c, d, j, k, sum;
a = window.prompt("Enter a Number");
b = window.prompt("Enter a Number");
c = window.prompt("Enter a Number");
d = window.prompt("Enter a Number");
//a = 5;
//b = 15;
//c = 1;
//d = 8;
sum = 0;
for (j = a; j <= b; j++) {
for (k = c ; k <= d ; k++) {
sum += j * j * k;
}
}
// document.write("<br>")
document.write(sum);
</script>
<noscript>
<p> You have JavaScript Turned Off <p>
</noscript>
</body>
</html>
我对这个很好奇,如果我更改并将 b 设置为 15 但将 a 作为变量,它也可以工作。我不明白。
顺便说一下,post 问题这一边给出的规则简直是愚蠢的屁股...如果代码本身最能代表问题,我为什么要写更多关于这个问题的内容?所以最好考虑一下您的 posting 规则!
我有一个简单的问题,通过 2 个代码括号,我想我已经很好地指出了我将要尝试做的事情。
希望现在这足以 post 它
发生这种情况是因为 window.prompt
return 是 String
。
当您将 a
变量声明为 a = 5;
时,您确保它是一个 Number
,然后所有其他计算将自动转换为 Number
由浏览器引擎提供。
但如果您不这样做,它会尝试连接字符串,但不会按预期工作。
你可以明白我在说什么,如果你声明 a = '5';
,你会发现它会像你通过 window.prompt
使用所有变量时一样工作。
并且您可以将 window.prompt
return 解析为 Number
,如果您想让它起作用:
a = Number(window.prompt("Enter a Number"));
用上面的代码看this fiddle I've created
当您执行 a 时,a = window.prompt("Enter a Number");
结果是字符串类型而不是数字。问题自然会出现在这里,for (j = a; j <= b; j++)
您必须使用 parseInt()
解析它并确保 a
是 number 类型,然后再执行程序中的 for 循环。
为什么会这样:
<html>
<title> JavaScript Tutorial 1
</title>
<body>
<script language = "javascript">
var a, b, c, d, j, k, sum;
// a = window.prompt("Enter a Number");
b = window.prompt("Enter a Number");
c = window.prompt("Enter a Number");
d = window.prompt("Enter a Number");
a = 5;
//b = 15;
//c = 1;
//d = 8;
sum = 0;
for (j = a; j <= b; j++) {
for (k = c ; k <= d ; k++) {
sum += j * j * k;
}
}
// document.write("<br>")
document.write(sum);
</script>
<noscript>
<p> You have JavaScript Turned Off <p>
</noscript>
</body>
</html>
虽然这不是:
<html>
<title> JavaScript Tutorial 1
</title>
<body>
<script language = "javascript">
var a, b, c, d, j, k, sum;
a = window.prompt("Enter a Number");
b = window.prompt("Enter a Number");
c = window.prompt("Enter a Number");
d = window.prompt("Enter a Number");
//a = 5;
//b = 15;
//c = 1;
//d = 8;
sum = 0;
for (j = a; j <= b; j++) {
for (k = c ; k <= d ; k++) {
sum += j * j * k;
}
}
// document.write("<br>")
document.write(sum);
</script>
<noscript>
<p> You have JavaScript Turned Off <p>
</noscript>
</body>
</html>
我对这个很好奇,如果我更改并将 b 设置为 15 但将 a 作为变量,它也可以工作。我不明白。
顺便说一下,post 问题这一边给出的规则简直是愚蠢的屁股...如果代码本身最能代表问题,我为什么要写更多关于这个问题的内容?所以最好考虑一下您的 posting 规则!
我有一个简单的问题,通过 2 个代码括号,我想我已经很好地指出了我将要尝试做的事情。
希望现在这足以 post 它
发生这种情况是因为 window.prompt
return 是 String
。
当您将 a
变量声明为 a = 5;
时,您确保它是一个 Number
,然后所有其他计算将自动转换为 Number
由浏览器引擎提供。
但如果您不这样做,它会尝试连接字符串,但不会按预期工作。
你可以明白我在说什么,如果你声明 a = '5';
,你会发现它会像你通过 window.prompt
使用所有变量时一样工作。
并且您可以将 window.prompt
return 解析为 Number
,如果您想让它起作用:
a = Number(window.prompt("Enter a Number"));
用上面的代码看this fiddle I've created
当您执行 a 时,a = window.prompt("Enter a Number");
结果是字符串类型而不是数字。问题自然会出现在这里,for (j = a; j <= b; j++)
您必须使用 parseInt()
解析它并确保 a
是 number 类型,然后再执行程序中的 for 循环。