我目前正在通过代码school.com学习javascript基础知识,而且我很难理解一些基本的东西。
在此代码中:
var numSheep = 4;
var monthsToPrint = 12;
for (var monthNumber = 1; monthNumber <= monthsToPrint; monthNumber++) {
if (numSheep > 10000) {
numSheep / 2;
console.log("Removing " + numSheep + " sheep from the population.");}
numSheep *= 4;
console.log("There will be " + numSheep + " sheep after " + monthNumber + " month(s)!");
}
为什么(numSheep > 10000)
之后的括号会如此改变我的输出?
抱歉这个简单的问题,谢谢你的耐心等待。
答案 0 :(得分:6)
if语句由三件事组成
if
(foo)
该代码可以是语句也可以是块。
<强>声明强>
if (1)
console.log("If is true");
console.log("This is a new statement and not part of the if");
阻止强>
if (1) {
console.log("If is true");
console.log("This is in the block so is part of the if");
}
答案 1 :(得分:1)
numSheep / 2;
不是有效的JavaScript代码。
应该像numSheep = numSheep / 2;
如果condition包含多行代码,那么它必须在{}大括号中。
答案 2 :(得分:0)
后面的括号允许多个陈述作为&#39; if&#39;的一部分执行。在&#39; if&#39;之后没有括号,只有其后的第一个语句被包含在&#39; if&#39;
中。这有帮助吗?
答案 3 :(得分:0)
在这个行括号中确定If()条件的边界和if()条件中的多行代码然后它需要括号
if (numSheep > 10000) {
numSheep / 2;
console.log("Removing " + numSheep + " sheep from the population.");
}
如果您的代码只有一行,那么在if()条件
之后您不想要括号 像那样if (numSheep > 10000)
numSheep / 2;