freeCodeCamp计数卡

时间:2018-06-02 13:00:35

标签: javascript

我目前正在尝试使用freeCodeCamp中的Javascript课程,并希望获得一些关于计数卡练习代码的反馈。

https://learn.freecodecamp.org/javascript-algorithms-and-data-structures/basic-javascript/counting-cards

有很多解决方案可以通过谷歌使用switch语句,但很少使用if / else。我只是想知道我的代码是否可行。

提前致谢。

var count = 0;

function cc(card) {
  // Only change code below this line
  var count=0;

 if (card>=2 && card<=6){          //cards 2,3,4,5,6
    count+=1;
 }else if (card>=7 && card<=9){      //cards 7,8,9
    count=count+=0;
 }else{                             //cards 10,'J','Q','K','A'
   count-=1;
 };
 return count;

 if (count>0){
   return count+'Bet';
 }else{
   return count+'Hold';
 };
 // 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');

1 个答案:

答案 0 :(得分:0)

  1. 无需添加&#39;;&#39;在{}之后(&#39; if&#39;),
  2. 该函数应返回一个值。如果&#39;则返回两个值。在一个功能中。
  3. 在函数cc()之前,已经定义了count的值,你在函数中重新定义它。当你运行&#39; cc(2); CC(3); CC(7); CC(&#39; K&#39); cc(&#39; A&#39;);&#39;。每当计数值为&#39; 0&#39;在功能启动。这意味着你运行&#39; cc(2); CC(3); CC(7); CC(&#39; K&#39); CC(&#39; A&#39);&#39;运行&#c; cc(&#39; A&#39;);&#39;。所以它显示错误的结果。
  4. 没有&#39; count = count + = 0;&#39;你应该输入&#39; count + = 0;&#39;
  5. 这是基于您的正确代码

     var count = 0;
    
    function cc(card) {
      // Only change code below this line
     if (card>=2 && card<=6){          //cards 2,3,4,5,6
        count+=1;
     }else if (card>=7 && card<=9){      //cards 7,8,9
        count+=0;
     }else  {                             //cards 10,'J','Q','K','A'
       count-=1;
     }
     return count<=0?count+" Hold":count+" Bet";
     // 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');