回答:
JavaScriptのelseifの形式は「else if」です。例:
if (condition) {
} else if (other_condition) {
} else {
}
elseif
、perlはelsif
(私はそう思います)、Pythonはelif
..最初はそのようなことで私を苛立たせましたが...ちょっとかわいいと思います。PythonとPHPでは、コロン構文を使用しないと機能しないため、これはわずかな目的で使用されます。
if
/ else
ブロックに必要ではありませんが、人々はそれらを使用することが推奨されているので、これが新しいユーザーにとって正しくないように見える理由を理解できます。
機能的に同等の次の構文を使用できます。
switch (true) {
case condition1:
//e.g. if (condition1 === true)
break;
case condition2:
//e.g. elseif (condition2 === true)
break;
default:
//e.g. else
}
これが機能するのは、それぞれcondition
がswitch
値と比較される前に完全に評価されるため、最初に評価されたものtrue
が一致し、その分岐が実行されるためです。を使用するbreak
ことを忘れない限り、後続のブランチは実行されません。
厳密な比較が使用されるため、condition
単に「真実」である分岐は実行されないことに注意してください。あなたはtrue
二重否定で真の値をキャストすることができます:!!condition
。
switch (true)
意味がありません。
true
た場合、そのケースが満たされます-とまったく同じelse if
です。
実際には、技術的に適切にインデントすると、次のようになります。
if (condition) {
...
} else {
if (condition) {
...
} else {
...
}
}
else if
厳密にはありません。
(更新:もちろん、指摘したように、上記は良いスタイルとは見なされません。)
if (condition1) { ... } else if (condition2) { ... } else { ... }
です。
else { if ... }
良いスタイルである誤った印象を与えるかもしれません。
if
し、else
実際の必要はありませんelseif
。