Javascript 如果语句赢了';t运行并否定以前的代码
我从来没有使用过这个网站之前,我是新的编程,所以请容忍我。我的作业要求我提示用户输入一个介于1和12之间的数字,再次询问他们是否没有这样做,并根据他们输入的数字更改背景颜色。低于6的变为红色,6为白色,高于6的变为蓝色 出于某种原因,如果我注释掉if/if-else/else块,那么之前的提示会起作用。如果我取消对它的注释,网页上什么也不会发生,我也不知道为什么。有人能告诉我我做错了什么吗Javascript 如果语句赢了';t运行并否定以前的代码,javascript,Javascript,我从来没有使用过这个网站之前,我是新的编程,所以请容忍我。我的作业要求我提示用户输入一个介于1和12之间的数字,再次询问他们是否没有这样做,并根据他们输入的数字更改背景颜色。低于6的变为红色,6为白色,高于6的变为蓝色 出于某种原因,如果我注释掉if/if-else/else块,那么之前的提示会起作用。如果我取消对它的注释,网页上什么也不会发生,我也不知道为什么。有人能告诉我我做错了什么吗 <script> var userNum = window.prompt("
<script>
var userNum = window.prompt("Please insert a number between 1 and 12...", "1 - 12");
if((userNum <= 12) && (userNum >= 1))
{
document.write
(
userNum + " * 1 = " + userNum * 1;
userNum + " * 2 = " + userNum * 2;
userNum + " * 3 = " + userNum * 3;
userNum + " * 4 = " + userNum * 4;
userNum + " * 5 = " + userNum * 5;
userNum + " * 6 = " + userNum * 6;
userNum + " * 7 = " + userNum * 7;
userNum + " * 8 = " + userNum * 8;
userNum + " * 9 = " + userNum * 9;
userNum + " * 10 = " + userNum * 10;
userNum + " * 11 = " + userNum * 11;
userNum + " * 12 = " + userNum * 12;
)
if(userNum < 6)
{
window.bgColor = "red";
}
else if(userNum > 6)
{
window.bgColor = "blue";
}
else
{
window.bgColor = "white";
}
}
else if((userNum > 12) || (userNum < 1))
{
window.alert("Error: Input value outside requested range");
window.reload();
}
else
{
window.alert("Error: Input value not a number");
window.reload();
}
</script>
var userNum=window.prompt(“请插入一个介于1和12之间的数字…”,“1-12”);
如果((userNum=1))
{
document.write
(
userNum+“*1=“+userNum*1;
userNum+“*2=“+userNum*2;
userNum+“*3=“+userNum*3;
userNum+“*4=“+userNum*4;
userNum+“*5=“+userNum*5;
userNum+“*6=“+userNum*6;
userNum+“*7=“+userNum*7;
userNum+“*8=“+userNum*8;
userNum+“*9=“+userNum*9;
userNum+“*10=“+userNum*10;
userNum+“*11=“+userNum*11;
userNum+“*12=“+userNum*12;
)
if(userNum<6)
{
window.bgColor=“红色”;
}
否则如果(userNum>6)
{
window.bgColor=“蓝色”;
}
其他的
{
window.bgColor=“白色”;
}
}
else如果((userNum>12)| |(userNum<1))
{
警告(“错误:输入值超出请求范围”);
window.reload();
}
其他的
{
警告(“错误:输入值不是数字”);
window.reload();
}
如果我取消对它的注释,网页上什么也不会发生,我也不知道为什么
使用浏览器内置的调试工具。例如,如果您使用的是Chrome,请阅读它的开发工具。搜索插入浏览器名称的“XYZ开发工具”将查找有关浏览器开发工具的信息
其中一个关键点是控制台,在大多数操作系统上,你可以通过Ctrl+Shift+I或F12,在Mac操作系统上,也可以通过Cmd+Shift+I访问控制台。在控制台中,您会看到第一个的语法错误代码>在文档中。写调用,因为你不能有代码>在这样的表达式的中间。您可能还希望分隔正在输出的行,因此最小更改版本可能是:
var userNum = window.prompt("Please insert a number between 1 and 12...", "1 - 12");
if((userNum <= 12) && (userNum >= 1))
{
document.write
(
userNum + " * 1 = " + userNum * 1 + "<br>" +
userNum + " * 2 = " + userNum * 2 + "<br>" +
userNum + " * 3 = " + userNum * 3 + "<br>" +
userNum + " * 4 = " + userNum * 4 + "<br>" +
userNum + " * 5 = " + userNum * 5 + "<br>" +
userNum + " * 6 = " + userNum * 6 + "<br>" +
userNum + " * 7 = " + userNum * 7 + "<br>" +
userNum + " * 8 = " + userNum * 8 + "<br>" +
userNum + " * 9 = " + userNum * 9 + "<br>" +
userNum + " * 10 = " + userNum * 10 + "<br>" +
userNum + " * 11 = " + userNum * 11 + "<br>" +
userNum + " * 12 = " + userNum * 12 + "<br>"
);
if(userNum < 6)
{
window.bgColor = "red";
}
else if(userNum > 6)
{
window.bgColor = "blue";
}
else
{
window.bgColor = "white";
}
}
else if((userNum > 12) || (userNum < 1))
{
window.alert("Error: Input value outside requested range");
window.reload();
}
else
{
window.alert("Error: Input value not a number");
window.reload();
}
var userNum=window.prompt(“请插入一个介于1和12之间的数字…”,“1-12”);
如果((userNum=1))
{
document.write
(
userNum+“*1=“+userNum*1+”
“+
userNum+“*2=“+userNum*2+”
“+
userNum+“*3=“+userNum*3+”
“+
userNum+“*4=“+userNum*4+”
“+
userNum+“*5=“+userNum*5+”
“+
userNum+“*6=“+userNum*6+”
“+
userNum+“*7=“+userNum*7+”
“+
userNum+“*8=“+userNum*8+”
“+
userNum+“*9=“+userNum*9+”
“+
userNum+“*10=“+userNum*10+”
“+
userNum+“*11=“+userNum*11+”
“+
userNum+“*12=“+userNum*12+”
“
);
if(userNum<6)
{
window.bgColor=“红色”;
}
否则如果(userNum>6)
{
window.bgColor=“蓝色”;
}
其他的
{
window.bgColor=“白色”;
}
}
else如果((userNum>12)| |(userNum<1))
{
警告(“错误:输入值超出请求范围”);
window.reload();
}
其他的
{
警告(“错误:输入值不是数字”);
window.reload();
}
但是一些其他注意事项:
- 通常,避免使用
文档。编写。使用domapi(或类似jQuery的包装库)在页面上显示信息更有用
- 您的第二个
if
是多余的,除非您有意允许用户输入非数字,并且依赖于与NaN
的比较始终为false
bgColor
属性早已被弃用,并被CSS取代。所以document.body.style.backgroundColor=“这里有颜色”代码>
您是否尝试过检查控制台是否存在错误?一个错误被抛出,你的代码无法执行(这就是为什么“网页上什么都没有发生”),所以当你评论if-else部分时,就不再有错误了。除了逻辑错误,你在文档中有基本语法错误。write
call.@t.J.Crowder我看到了文档。write problems,但我不认为这和复制品有相同的逻辑错误question@NicholasTower:你说得对,我误读了条件。你为什么不尝试使用JavaScript的开关
功能呢?这就是全部,谢谢。窗口没有像我想的那样重新加载,但我可能能弄明白。我只使用document.write来完成我现在要上的这门课。我确信教授用它来说明BOM和DOM的属性和结构。然而,你认为你能解释一下为什么我的第二个if语句是多余的吗?