I currently have this code below, it is supposed to emulate a card counting system, in which different characters increment/decrement the count when passed. The code below runs successfully, but when I attempt console.log(cc(2,3,4,5,6); it returns 1 Bet, when I know the code runs 5 Bet, as those characters should increment the count, yet console.log does not return the accurate count, I assume this is due to scope? But I would like if someone could explain why count isn't accurately returned.
var count = 0;
function cc(card) {
switch(card) {
case 2:
case 3:
case 4:
case 5:
case 6:
count += 1;
break;
case 7:
case 8:
case 9:
count += 0;
break;
case 10:
case 'J':
case 'Q':
case 'K':
case 'A':
count -= 1;
break;
}
if (count > 0) {
return count + " Bet";
}
else {
return count + " Hold";
}
}
cc(2,3,4,5,6); \\ returns 5 Bet
console.log(cc(2,3,4,5,6)); \\ returns 2 Bet