Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Javascript中增量和减量是如何工作的_Javascript - Fatal编程技术网

在Javascript中增量和减量是如何工作的

在Javascript中增量和减量是如何工作的,javascript,Javascript,有人能解释一下为什么这个函数返回0 它不应该返回1,因为n++=n和--n=n-1 var x = function(n) { return n++ - --n; }; n++是一个,因此首先返回值,然后将1添加到其中: var n=1; console.log(n++)//显示1,递增'n'到2 控制台日志(n)//显示2 console.log(n++)//显示2,将'n'递增为3这是一个从左到右的求值,在使用其值后进行递增。 假设输入是10 计算为10,然后增加,然后减少,因此

有人能解释一下为什么这个函数返回
0

它不应该返回
1
,因为
n++=n
--n=n-1

var x = function(n) {
    return n++ - --n;
};
n++
是一个,因此首先返回值,然后将
1
添加到其中:

var n=1;
console.log(n++)//显示1,递增'n'到2
控制台日志(n)//显示2

console.log(n++)//显示2,将'n'递增为3
这是一个从左到右的求值,在使用其值后进行递增。 假设输入是10 计算为10,然后增加,然后减少,因此最终表达式为10-10。

n++--n

如果n=10,则(n++)的值为10,但之后n增加1。 因此,在计算(n++)后,n=11。如果n=11,(-n)=10

n++--n
--- -----  ---

10 n=11 10
让我们说
n=10

1.
n++
将返回在递增之前保持的原始值。在进行下一个操作之前,
n
将为11。
2.
--n
增加的值(11)减少1,然后返回减少的值。
3.最后,10-10是0

--n
(n+1)-1
(原始
n
),它是
n
,而不是
n-1
<代码>n在
n++
处更改。