Poker2023
Trying to see if I can adapt the 2012 solution for code golf.
by subskybox
HTML
<script src="https://cdn.jsdelivr.net/gh/eu81273/jsfiddle-console/console.js"></script>
<div id="output"></div>
CSS
body {
/* font-size: 5em; */
}
JavaScript
var out = document.getElementById('output');
//console.log(out);
// Examining Suits
console.log("๐ฒ๐ป๐ฝ๐ฑ๐พ".split(/(?:)/u).map(a=>a.charCodeAt(1)&48).every((v,i,a)=>v==a[0]));
console.log("๐๐ค๐ด๐ฎ๐".split(/(?:)/u).map(a=>a.charCodeAt(1)&48).every((v,i,a)=>v==a[0]));
//Worth checking if a shift will result in distinct powers of two
//console.log("๐๐ค๐ด๐ฎ๐".split(/(?:)/u).map(a=>a.charCodeAt(1)>>4&3));
// Examining Ranks
//console.log("๐ฒ๐ป๐ฝ๐ฑ๐พ".split(/(?:)/u).map(a=>a.charCodeAt(1)&15));
//Corrected for French playing cards
console.log("๐ฒ๐ป๐ฝ๐ฑ๐พ".split(/(?:)/u).map(a=>(a=a.charCodeAt(1)&15)<12?a:a-1));
//for (let arg of arguments)
// print(arg.split(/(?:)/u).map(a=>(a=a.charCodeAt(1)&15)<12?a:a-1));
for(a of ["๐ฒ๐ป๐ฝ๐ฑ๐พ", "๐๐ค๐ด๐ฎ๐"]) {
wave1 = a.split(/(?:)/u).map(a=>[(b=a.charCodeAt(1)&15)<12?b:b-1,(1<<b)]);
console.log(wave1);
//wave2 = wave1.reduce((accumulator, currentValue) => accumulator + parseInt(currentValue),0);
wave2 = wave1.reduce((r, a) => r.map((b, i) => a[i] + b));
console.log(wave2);
}