Javascript 为什么没有';我是否需要在第一块代码中使用else if语句?
这是第一段代码Javascript 为什么没有';我是否需要在第一块代码中使用else if语句?,javascript,if-statement,Javascript,If Statement,这是第一段代码 function assignment1() { var number = prompt("Enter a number"); if (number>=1 && number<=10) { alert("The number is between 1 and 10.") } if (number>=11 && number<=20) { alert("The number is between
function assignment1() {
var number = prompt("Enter a number");
if (number>=1 && number<=10) {
alert("The number is between 1 and 10.")
}
if (number>=11 && number<=20) {
alert("The number is between 11 and 20.")
}
}
assignment1();
函数赋值1(){
变量编号=提示(“输入编号”);
如果(数字>=1&&number=11&&number=50 | |数字TLDR:使用if
和if-else
将完全相同,因为条件是相互排斥的
考虑:
var condition1 = number>=1 && number<=10
var condition2 = number>=11 && number<=20
与写作相同:
if (condition1) {
// case 1
}
if (!condition1 && condition2) {
// case 2
}
由于condition1
和condition2
是互斥的,如果condition2
是true
,那么!condition1
也是true,因此上述内容相当于:
if (condition1) {
// case 1
}
if (condition2) {
// case 2
}
然而,大多数程序员仍然会使用if-else
在第二个示例中,条件为:
var condition1 = (number<50 || number>200)
var condition2 = (number>=50 || number<=200)
因为第一个块中的if条件是互斥的,而第二个块中的if条件不是互斥的
在第一个块中,任何给定的数字不能同时是=11
。但在第二个块中,像300
这样的数字肯定是>200
和=50
,从而匹配这两个条件。像第二个语句一样编写是编程中对条件语法的逻辑和响应在这种情况下不起作用,但在其他条件下可能不起作用
if (condition1) {
// case 1
}
if (condition2) {
// case 2
}
var condition1 = (number<50 || number>200)
var condition2 = (number>=50 || number<=200)
if (condition1) {
// case 1
} else {
// case 2
}