为什么我的Javascript增量运算符(++)在我的addOne函数中无法正常工作

Chi*_*adu 4 javascript increment

请有人可以向我解释为什么我的addOne函数不能与增量运算符(++)一起使用。请在下面查看我的代码。

// addOne Function

function addOne(num){
  return num + 1
}

log(addOne(6)) => 7


// same function with ++ operator

function addOne(num){
  return num++
}

log(addOne(6)) => 6


// Question - why am I getting 6 instead of 7 when I use ++ operator?
Run Code Online (Sandbox Code Playgroud)

Gre*_*hak 5

有两个增量运算符:前缀和后缀。

后缀运算符在对变量求值后将其递增。例如,以下代码产生11,因为它加了5和6:

var a = 5;
(a++) + (a++)
Run Code Online (Sandbox Code Playgroud)

前缀运算符会在评估变量之前对变量进行递增。听起来就是您想要的。以下代码产生13,因为它加了6和7:

var a = 5;
(++a) + (++a)
Run Code Online (Sandbox Code Playgroud)

因此,您的代码应为:

function addOne(num) {
  return ++num;
}

console.log(addOne(6));
Run Code Online (Sandbox Code Playgroud)