根据卡片组值在Javascript中增加/减少计数,并返回准确的计数
我正在处理一个Freecodecamp问题,其中一个组件是获取5张卡的值,将其与您指定的值进行比较,然后根据这些卡显示当前计数 比如说, 数字为2、3、4、5和6的卡应使计数增加1。 数字为7、8和9的卡不应起任何作用。 卡片10,J,Q,K,A应该使计数减少1 所以,如果我给它5张卡的价值,它应该把它们加起来,并根据这些卡的价值向我提供计数 这是我的代码,我知道这是草率的,但试图让它更好根据卡片组值在Javascript中增加/减少计数,并返回准确的计数,javascript,Javascript,我正在处理一个Freecodecamp问题,其中一个组件是获取5张卡的值,将其与您指定的值进行比较,然后根据这些卡显示当前计数 比如说, 数字为2、3、4、5和6的卡应使计数增加1。 数字为7、8和9的卡不应起任何作用。 卡片10,J,Q,K,A应该使计数减少1 所以,如果我给它5张卡的价值,它应该把它们加起来,并根据这些卡的价值向我提供计数 这是我的代码,我知道这是草率的,但试图让它更好 var count = 0; function cc(card) { // Only change
var count = 0;
function cc(card) {
// Only change code below this line
switch (card) {
case ("A"):
--count; }
switch (card) {
case ("2"):
++count; }
switch (card) {
case ("3"):
++count; }
switch (card) {
case ("4"):
++count; }
switch (card) {
case ("5"):
++count; }
switch (card) {
case ("6"):
++count; }
switch (card) {
case ("7"):
}
switch (card) {
case ("8"):
}
switch (card) {
case ("9"):
}
switch (card) {
case ("10"):
--count; }
switch (card) {
case ("J"):
--count; }
switch (card) {
case ("Q"):
--count; }
switch (card) {
case ("K"):
--count; }
return count;
// Only change code above this line
}
// Add/remove calls to test your function.
// Note: Only the last will display
cc(2); cc(3); cc(7); cc('K'); cc('A');
现在我尝试使用返回计数;返回++计数;和返回计数;这些都给了我不同的价值观。我想我可能没有参考底部cc的值,甚至没有根据正确的值进行计数,我想我可能只是对整套卡进行盲计数
非常感谢您的帮助。提前感谢。请参阅如何使用开关,案例:
使用switch case与使用if-else完全不同,我认为您正在模仿它。类似于以下内容:
var count = 0;
function cc(card) {//or, with ES6: cc = (card) => { (no 'function' keyword required)
switch (card) {
case ("A")://all of these 'fall through' until they hit break...be careful with this, and comment it in your code
case ("10"):
case ("J"):
case ("Q"):
case ("K"):
count -= 1;//or, count = count - 1
break;//break sends you out of the switch statement
case ("2")://same here
case ("3"):
case ("4"):
case ("5"):
case ("6"):
count += 1;
break;
//no need to do anything with 7, 8, 9
}
return count;
}
您还可以为end添加一个默认值,以防发送的值不是已处理的值,但在这种情况下,您所要做的就是count=count,这是不必要的。祝你好运