Let count affected by the function?

So why is count affected by the switch case if declared outside of the function ? And “Cards Sequence 2, 3, 4, 5, 6 should return the string 5 Bet” how does the case switch this work ? Do we give all the arguments like cc(2,3,4,5,6 ) even if the function expects only 1 ?

let count = 0;

function cc(card) {
  // Only change code below this line

switch(card){
  case 2:
  case 3:
  case 4:
  case 5:
  case 6:
    count++;
    break;
 /* case 7:
  case 8:
  case 9:
    count=+0;
    break; */
  case 10:
  case 'J':
  case 'Q':
  case 'K':
  case 'A':
    count--;
    break;

}

if(count > 0){
  return count + " Bet";
}
else{
  return count + " Hold";
}
  // Only change code above this line
}

cc(2); cc(3); cc(7); cc('K'); cc('A');

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/112.0

Challenge: Basic JavaScript - Counting Cards

Link to the challenge:

  1. That is how scopes work. It looks for the identifier in the current scope (execution context) and keeps moving up into outer scopes until it finds it or if it doesn’t find it at the top-level it throws a reference error.

  2. They are separate function calls.

1 Like

Oh okay thank you very much!