if文を使用せずにswitch case構造体を使って1つの整数を別の整数と比較する方法はありますか?Switch Case To/between
など。
switch(integer) {
case 1 to 10:
break;
case 11 to 20:
break;
case 21 to 30:
break;
}
if文を使用せずにswitch case構造体を使って1つの整数を別の整数と比較する方法はありますか?Switch Case To/between
など。
switch(integer) {
case 1 to 10:
break;
case 11 to 20:
break;
case 21 to 30:
break;
}
私のコメントで述べたように、あなたはそれを行うことはできません。
function inRange(x, min, max) {
return min <= x && x <= max;
}
とif - else if
とそれを一緒に使用します。ただし、inRange
関数を定義することができます。それはそれは非常に読みやすくするために行う必要があります「クール」構文について
if(inRange(integer, 1, 10)) {
}
else if(inRange(integer, 11, 20)) {
}
//...
投稿:P
if(integer in range(0, 10)) {
}
else if (integer in range(11, 20)) {
}
else if (integer in range(21, 30)) {
}
function range(min, max){
var o = {}, i ;
for(i = min; i <= max; ++i) {
o[i] = !0;
}
return o;
}
なぜ 'o [i] =!0'は' o [i] = true'よりも優れていますか?涼しいですか? ;)これのようなオブジェクトを毎回作成するのは無駄だと思われますが、この方法で 'in 'を使うことは創造的です。 –
@FelixKling yeah:D範囲の構文にその甘い整数を持たなければ、本当の意味で使用することはできません – Esailija
私はあなたに「創造性のための仮想」+1を与えます) –
をあなたには、いくつかの数学の操作を行うことができます。
switch(Math.ceil(integer/10)) {
case 1: // Integer is between 1-10
break;
case 2: // Integer is between 11-20
break;
case 3: // Integer is between 21-30
break;
}
それは素晴らしいです!ケースを素早くシンプルに保ちます。 – daGUY
はい、あります。私は、私は自分のコードであれば/他の構造を使用すると思いますかなり確信していますが、スイッチを使用することに熱心なら、次は動作します:あなたがすることを避けるために望んでいた場合はもちろん
switch(true) {
case integer >= 1 && integer <= 10:
// 1-10
break;
case integer >= 11 && integer <= 20:
// 11-20
break;
case integer >= 21 && integer <= 30:
// 21-30
break;
}
あなたはブール値を返すとするために、独自のisInRange(num,min,max)
タイプの関数を定義することができ、すべてのケースのコード>= && <=
は言う:
switch (true) {
case isInRange(integer,1,10):
// 1-10
break;
// etc
}
号さて、あなたは 'かもしれないスイッチ(整数<10){場合、真:....} '(これは' switch 'を通して整数を別のものと比較している)しかし、私はそれが役に立たないと思う。 –
ああ。 if(整数<= 10)などと比べて読みやすく、コーディングする方がはるかに簡単に思えるので尋ねました。私は以前のどこかの構文を見たことがありますが、どこで何のために忘れてしまいます。 –