【发布时间】:2011-12-25 00:31:46
【问题描述】:
这是我正在使用的教程中的 JavaScript 代码的 sn-p。我不明白为什么它没有以最后的else 子句结尾;我认为这是一个规则。
var curScene = 0;
function changeScene(decision) {
var message = "";
if(curScene == 1) {
message = " welcome";
} else if (curScene == 2) {
message = " this is scene two";
} else if (curScene == 3) {
message = " this is scene three";
}
document.getElementById("sceneimg").src = "scene" + curScene + ".png";
if(message != ""){
alert(message);
}
}
【问题讨论】:
-
不,else 不是必须的。
-
据我所知,没有必要使用任何语言的 else。如果在 if 条件为 false 时没有什么特别的事情要做,那么也没有逻辑上的需要。这将是一个空块。
-
else是if/else块中的可选关键字。而且,您的教程代码的逻辑可能不需要else -
else用于需要全面处理任何未被评估为真实的事物的情况。我见过以else if结尾的代码,然后给出一个必须满足的条件。这是一种仅在必须满足特定条件并且您不关心业务逻辑之外的条件时才实现代码分支的方法。
标签: javascript if-statement conditional