レッスン 9

数字からスートやランクをトランプの記号に変換して表示しよう

トランプのカードのスートやランクを数字で表示していましたが、数字をトランプの記号に変換して、実際のトランプに近い見た目を作ってみましょう。

チャプター1スートとランクの対応表を作ろう

数字とスートやランクの対応をコメント等で書いておく方法等もありますが、今回は対応表をオブジェクトにして記述することにします。
オブジェクトの記述方法は{プロパティ名1:値1, プロパティ名2:値2, ...};のように記述します。
0~3をスペード、ハート、ダイア、クラブに対応するスートオブジェクトと
ランク1~13をA、2~10、J,K,Qに対応させるランクのオブジェクトを作りましょう。

1. 1 ヒント

  • objectオブジェクトのリファレンス
  • スートオブジェクトの作成例
    
    //スートの種類
    const SUIT = {
    SPADE: 0,
    HEART: 1,
    DIA: 2,
    CLUB: 3
    };
    console.log(SUIT.SPADE);//コンソールに0が表示される
    console.log(SUIT.HEART);//コンソールに1が表示される
    console.log(SUIT.DIA);//コンソールに2が表示される
    console.log(SUIT.CLUB);//コンソールに3が表示される
    
    

チャプター2スートの番号から色に変換する

トランプのカードはスペードとクラブが黒、ハートとダイアが赤の色でスートとランクを表示します。
スペードクラブだったら黒、ハートかダイヤだったら赤の色を返す関数を作って、スートの番号(0~3)から色を変更できるようにしてみましょう。

2. 1 ヒント

チャプター3スートの番号から記号に変換する

スートの番号から色に変換する関数と同様に、スートの番号から記号に変換する関数を作成しましょう。
スペードは♠、ハートは♥、ダイアは♦、クラブは♣の文字を返す関数を作成しましょう。

3. 1 switch文

if-else以外にswitch文で条件分岐することもできます。

switch(式){
case 値1 :
式と値1が合致した場合に実行される命令
break;//スイッチ文を抜ける
case 値2 :
式と値2が合致した場合に実行される命令
default :
どの値にも合致しない場合実行される命令
}

上記のように記述し、式を評価して値と一致するcase句を実行します、一致するcase句がない場合default句を実行します。

3. 2 ヒント

チャプター4ランクの番号から記号に変換する

ランク番号からランク記号に変換する関数を追加しましょう。
1をAに2~10はそのまま11はJ、 12は Q、 13はKに変換した値を返しましょう。

チャプターを全部クリアしよう!