if...else
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since 2015å¹´7æ.
if...else æã¯ãæå®ãããæ¡ä»¶ãçå¤ãªãã°æãå®è¡ãã¾ããæ¡ä»¶ãå½å¤ãªãããªãã·ã§ã³ã® else ç¯ã«ãããã䏿¹ã®æãå®è¡ãã¾ãã
試ãã¦ã¿ã¾ããã
function testNum(a) {
let result;
if (a > 0) {
result = "æ£ã®æ°";
} else {
result = "æ£ã®æ°ã§ã¯ãªã";
}
return result;
}
console.log(testNum(-5));
// äºæ³ãããçµæ: "æ£ã®æ°ã§ã¯ãªã"
æ§æ
if (condition)
statement1
// else ç¯ä»ã
if (condition)
statement1
else
statement2
conditionstatement1-
condition ãçå¤ã®å ´åã«å®è¡ãããæã§ããããã«ãã¹ãããã
ifæãå«ããã©ããªæã§ãã£ã¦ããã¾ãã¾ãããè¤æ°ã®æãå®è¡ããããã«ã¯ããããã®æãã°ã«ã¼ãåããããã«ãããã¯æ ({ /* ... */ }) ã使ç¨ãã¦ãã ãããå®è¡ããæããªãå ´åã¯ã空æã使ç¨ãã¦ãã ããã statement2-
conditionãå½å¤ã§ããã¤elseç¯ãåå¨ãããªãå®è¡ãããæã§ãããããã¯æããã³ããã«ãã¹ããããifæãå«ããã©ããªæã§ãã£ã¦ããã¾ãã¾ããã
解説
è¤æ°ã® if...else æããã¹ããããã¨ã§ã else if ç¯ã使ãããã¨ãã§ãã¾ãã JavaScript ã§ã¯ï¼1 åèªã®ï¼elseif ãã¼ã¯ã¼ããããã¾ããã®ã§æ³¨æãã¦ãã ããã
if (condition1)
statement1
else if (condition2)
statement2
else if (condition3)
statement3
// â¦
else
statementN
ãããã©ã®ããã«åä½ãããçè§£ããããã«ããã¹ããé©åã«ã¤ã³ãã³ãããã¦ãããã©ã®ããã«è¦ãããã示ãã¾ãã
if (condition1)
statement1
else
if (condition2)
statement2
else
if (condition3)
statement3
// â¦
ç¯ã®ä¸ã§è¤æ°ã®æãå®è¡ããããã«ã¯ããããã®æãã°ã«ã¼ãåããããã«ãããã¯æ ({ ... }) ã使ã£ã¦ãã ããã
if (condition) {
statements1
} else {
statements2
}
ãããã¯ã使ç¨ããªãã¨ãç¹ã«ã³ã¼ããæä½æ¥ã§æ´å½¢ããã¦ããå ´åãæ··ä¹±ããåä½ã«ãªããã¨ãããã¾ãã
function checkValue(a, b) {
if (a === 1)
if (b === 2)
console.log("a is 1 and b is 2");
else
console.log("a is not 1");
}
ãã®ã³ã¼ãã¯ä½ã®åé¡ããªãããã«è¦ãã¾ãããcheckValue(1, 3) ãå®è¡ãã㨠"a is not 1" ã¨ãããã°ãåºåãã¾ããããã¯ãdangling else ã®å ´åãelse ç¯ã¯æãè¿ã if ç¯ã«æ¥ç¶ãããããã§ãããããã£ã¦ãä¸è¨ã®ã³ã¼ããé©åãªã¤ã³ãã³ãã§è¨è¿°ããã¨ã次ã®ããã«ãªãã¾ãã
function checkValue(a, b) {
if (a === 1)
if (b === 2)
console.log("a is 1 and b is 2");
else
console.log("a is not 1");
}
ä¸è¬çãªè¯ãå®è·µã¨ãã¦ã¯ã常ã«ãããã¯æã使ç¨ããç¹ã«å
¥ãåã® if æãå«ãã³ã¼ãã§ã¯ããããã¯æã使ç¨ãããã¨ããå§ããã¾ãã
function checkValue(a, b) {
if (a === 1) {
if (b === 2) {
console.log("a is 1 and b is 2");
}
} else {
console.log("a is not 1");
}
}
ããªããã£ãã®è«çå¤ã§ãã true ããã³ false ã Boolean ãªãã¸ã§ã¯ãã®çæ§ã彿§ã¨æ··åããªãã§ãã ããã false, undefined, null, 0, -0, NaN, 空æåå ("") ã®ãããã§ããªãå¤ãããã³ä»»æã®ãªãã¸ã§ã¯ãã¯ï¼false ã®å¤ãæã¤ Boolean ãªãã¸ã§ã¯ããå«ãï¼ãæ¡ä»¶ã¨ãã¦ä½¿ç¨ãããã¨ãã«çå¤ã¨è§£éããã¾ããä¾ãã°ä»¥ä¸ã®ãããªå ´åã§ãã
const b = new Boolean(false);
if (b) {
console.log("b is truthy"); // "b is truthy"
}
ä¾
>if...else ã®ä½¿ç¨
if (cipherChar === fromChar) {
result += toChar;
x++;
} else {
result += clearChar;
}
else if ã®ä½¿ç¨
JavaScript ã« elseif æ§æã¯ããã¾ããã®ã§æ³¨æãã¦ãã ããã else 㨠if ã®éã«ç©ºç½ãç½®ãã¦è¨è¿°ãã¦ãã ããã
if (x > 50) {
/* ä½ããè¡ã */
} else if (x > 5) {
/* ä½ããè¡ã */
} else {
/* ä½ããè¡ã */
}
æ¡ä»¶å¼ã®ä¸ã§ã®ä»£å ¥
if...else ã®æ¡ä»¶å¼ã¨ã㦠x = y ã®ãããªä»£å
¥å¼ãæããããã¨ã¯ãã»ã¼çµ¶å¯¾ã«é¿ããã¹ãã§ãã
if ((x = y)) {
// â¦
}
while ã«ã¼ãã¨ã¯ç°ãªããæ¡ä»¶ã¯ 1 åã ãããè©ä¾¡ãããªãã®ã§ã代å
¥ã¯ 1 åããè¡ããã¾ãããä¸è¨ã®ã³ã¼ãã¯æ¬¡ã®ãã®ã¨ç価ã§ãã
x = y;
if (x) {
// â¦
}
ããã¯ã¯ããã«æç¢ºã§ããããããç¨ã«ãã®ãããªãã¨ãããããªã£ãå ´åãwhile ã®ããã¥ã¡ã³ãã®ä»£å
¥ãæ¡ä»¶ã¨ãã¦ä½¿ç¨ã®ç¯ã«ãæ¨å¥¨äºé
ãæ¸ããã¦ãã¾ãã
仿§æ¸
| Specification |
|---|
| ECMAScript® 2027 Language Specification> # sec-if-statement> |