- var + 1和var ++之间的区别

时间:2018-02-22 13:47:26

标签: javascript node.js int

我想知道,为什么int ++不起作用,但int + 1正在工作。有人知道为什么在我的例子中发生这种情况?有什么区别吗?

function retryFunction(something, count) {
     if (!count) {
         count = 0;
     }

     console.log(typeof count);
     console.log(count);

     if (count < 5) {
          return setTimeout(function () {
              //working
              retryFunction(something, count+1);

              //not working
              retryFunction(something, count++);
          }, 1000)
      }
}

retryFunction(null);

2 个答案:

答案 0 :(得分:5)

表达式count + 11添加到count和&#34;返回&#34;结果。

表达式count++返回count的当前值,然后1添加到count(从而修改变量值,但是使用旧值后。)

答案 1 :(得分:2)

前缀增量与后缀增量运算符。在您的示例的上下文中松散地说,count++说&#34;用原始值调用函数,然后递增并存储在变量&#34;中。但是,如果您使用++count,则表示&#34;增加变量并将结果发送给函数。&#34;

NB。虽然++count会&#34;工作&#34;,你真正想要的是数+ 1;将结果存储在此上下文中的传递参数中是没有意义的。