私はsiwtch場合はJavaScript どのように使用するスイッチケースの範囲はJavaScript
このような3210を使用しようとしているが、これは間違った方法でswitch()case
を使用しているもの
私はsiwtch場合はJavaScript どのように使用するスイッチケースの範囲はJavaScript
このような3210を使用しようとしているが、これは間違った方法でswitch()case
を使用しているもの
を表示されませんでした。状態をチェックしようとしているが、範囲をチェックしようとしていないときは、switch
が使用されているためです。あなたは範囲を確認したい場合は、むしろこのようif()else
状態を使用したい:
あなたは、あなたが伝統的なif else
のために行く必要が他のswitch
を、使用して範囲をチェックしようとしている場合、スイッチケースを変更する必要があります調子。私はあなたの要件ごとにコードを変更しました。これを確認してください。それ以外の場合は使用
<html>
<body>
<p id="demo"></p>
<script>
var n=new Date();
var jam=n.getHours();
var time = "";
switch (true) {
case (jam>=17):
time = "sleep";
break;
case (jam<17):
time = "work";
break;
}
document.getElementById("demo").innerHTML = "This Time for " + time;
</script>
</body>
</html>
<html>
<body>
<p id="demo"></p>
<script>
var n=new Date();
var jam=n.getHours();
var time = "";
if (jam>=17){
time = "sleep";
}
else if (jam<17){
time = "work";
}
document.getElementById("demo").innerHTML = "This Time for " + time;
</script>
</body>
</html>
あなたはcase
を使用して、選択部分のcase文とtrue
で条件を使用することができます。
小数点の値と大きな値を最初にチェックするために、谷型を使用します。チェックでは、例のように文字列ではなく数字を使用する必要があります。
少なくともあなたはデフォルトブランチを使用してデフォルトのようなものを割り当てます。これは他の条件がすべて満たされない場合に機能します。私はあなたのコードを修正した
var n = new Date(),
jam = n.getHours(),
time = '';
switch (true) {
case (jam < 9): // this leads to if (true === (jam < 9)) { ...
time = "coffee";
break;
case (jam < 17):
time = "work";
break;
case (jam < 19):
time = "relaxing";
break;
default:
time = "sleep";
}
console.log("This Time for " + time);
console.log(jam);
、ここのJSフィドル
https://jsfiddle.net/qkpmkzoh/
と固定コードはこれです。それ以外の場合、私はそれがこのケースでは
var n=new Date();
var jam=n.getHours();
var time = "";
console.log(jam);
if (jam>=17){
time = "sleep";
}
else if(jam<17) {
time = "work";
}
コードをより読みやすくなりますよう、あなたが 'IF()else'状態ではない'スイッチ()case'を使用する必要があり、使用することをお勧めいたしますでしょうしかし
– xAqweRx
http://www.w3schools.com/jsref/jsref_switch.aspスイッチケースの仕組みをお読みください。あなたはelse elseを使用する必要があります – sinsuren
なぜこの場合単純な 'if else'文を使用していませんか?さもなければ、式は数値ではなく 'ブール値'を返すので、スイッチケースは決して一致しません。また、整数を比較しているので、引用符を使用しないでください。 – enricog