无法理解Javascript中的说明

时间:2015-12-14 06:13:41

标签: javascript

所以,我有一个任务分配给我,但我发现说明有点深,英语不是我的母语。所以这里有说明:

  • 编写一个对名为move
  • 的变量进行操作的表达式
  • 如果move有值,则表达式应评估为该值。
  • 但是,如果'移动'如果未指定/为null,则表达式应等于getInput()

以下是我如何看待它:

var move = getInput();
if (move === getInput) {
    console.log("Player: " + move);
}
else if (move === null) {
    getInput():
};
return getInput (move);

1 个答案:

答案 0 :(得分:3)

TruthyFalsy

getInput是一个功能。当你到达

if (move === getInput) // rest of code

这是检查调用getInput()的结果是否是对函数本身的引用...这可能不是你想要的。

如果检查Truthy值。

null不是真的,所以对你输入的充分测试将是

if (move) // rest of code.

移动将填充输入。所以这就是为什么在if语句的主体中控制它。它会有意义。

更多

您不需要使用else if进行明确检查,因为您正在检查对if的直接否定。

所以你的格式应该是

if (move) {
// ...
} else { // no need for else if here. null is implied.
// ...
}