ex08-04-3

ソース

const カードの束 = [];
for(let マーク of ['ハート', 'クローバー', 'ダイア', 'スペード']) // 全カードを生成
   for(let 数字=1; 数字<=13; 数字++)
      カードの束.push({ マーク, 数字});

let 選択されたカード = カードの束.filter(カード => カード.数字 === 2); 
console.log(選択されたカード); // 2のカードのみ。次の4枚 
/* [ { 'マーク': 'ハート', '数字': 2 },
  { 'マーク': 'クローバー', '数字': 2 },
  { 'マーク': 'ダイア', '数字': 2 },
  { 'マーク': 'スペード', '数字': 2 } ] */

選択されたカード = カードの束.filter(カード => カード.マーク === 'ダイア');
console.log(選択されたカード); // ダイアのカードのみ 13枚(以下詳細は省略)

選択されたカード = カードの束.filter(カード => カード.数字 > 10);
console.log(選択されたカード); // 絵札のみ(3×4=12枚)

選択されたカード
  = カードの束.filter(カード => カード.数字 > 10 && カード.マーク === 'ハート'); 
console.log(選択されたカード); // ハートの絵札のみ3枚