ビギグラマーのノート

自作PCやプログラミングについてのブログです。

【JavaScript】Switchに複数の評価する値を入れる

 やりたい事

 ここでやりたいことはJavaScriptのSwitch文に複数の評価する値を入れて判別するということです。文章にするより実際のコードを見てもらった方が良いかもしれません。(もちろんこのコードは正常に動きません。swiftのコードです。)

 この場合defaultが選択されるのを期待しますが、 実際動かしてみるとpoint1が選択されます。

なのでこうします。

 これの味噌はtoString()で配列をStringに直す事です。そうでないと比較はアドレスの違いを見ることになり期待した動きをしません。数値以外にもtoString()でStringにして比較をしても良いものは大抵この方法でできます。しかしHTMLの要素などのtoString()しても一定の値しか返ってこない場合は使用できません。もっと要素を展開して識別できる値を見つける必要があります。

 結局のところ文字列と数値がくらいが安全に比較できる限界でしょうか。また、これは値を文字に直して完全一致の場合、すなわち両方の評価する値が一致する場合のみcaseが実行されるのでどちらか片方が一致する場合という条件をつけることができません。