Javascript 自增和自减运算符

问题描述 投票:0回答:1

let i = 1; i = i++ - --i + ++i - i--; console.log(i);

结果显示 0 i++ 为 1、--i 为 1、++i 为 2、i-- 为 2 时如何工作。

据我了解,i++ 应该是 1,--i 应该是 0,++i 应该是 1,i-- 应该是 1。

由于后递增或递减应该稍后改变,所以预递增或递减立即生效。

请澄清我做错了什么。

javascript logic
1个回答
0
投票

后缀运算符在表达式求值后执行:

let i = 1; 

i = i++ /* 1, ++ postponed */  - --i /* - 0, the same 1 */ + ++i /* 2 */ - i-- /* 2-2=0, -- postponed */; 
// postponed: ++ -- = 0

console.log(i);

© www.soinside.com 2019 - 2024. All rights reserved.