返回扑克对卡-JavaScript

我们需要编写一个函数,该函数需要一个正好包含五个元素的数组,这些元素代表随机抽取的扑克玩家的五张牌。

如果五张卡至少包含一对,则我们的函数应返回最高对的卡号(如果仅存在一对,则不重要)。否则我们的函数应该返回false。

例如:如果数组是-

const arr = ['A', 'Q', '3', 'A', 'Q'];

然后我们的函数应该返回-

'A'  (as 'A' > 'Q' in card games)

示例

以下是代码-

const arr = ['A', 'Q', '3', 'A', 'Q'];
const greatestPair = arr => {
   const legend = '23456789JQKA';
   const pairs = [];
   for(let i = 0; i < arr.length; i++){
      if(i !== arr.lastIndexOf(arr[i])){
         pairs.push(arr[i]);
      };
   };
   if(!pairs.length){
      return false;
   };
   pairs.sort((a, b) => legend.indexOf(b) - legend.indexOf(a));
   return pairs[0];
};
console.log(greatestPair(arr));

输出结果

以下是控制台中的输出-

A