自增和自减(案例分析)
前减和后减 单独使用都代表自减 1
连起来使用
/*
* 前减 参与运算之前自减 1
* 后减 参与运算之后自减1
* 前减 在当前行自减 1
* 后减 在下一行自减1
*/
// 前减 在当前行自减 1
var i = 1; var b = 2; var c = --i + --b; console.log(c); //1 console.log(i); //0 console.log(b); //1
下面来看一则进阶案例:
var result = 3; result = (result--) + (++result); // 3 + 3 console.log(result); // 6
本案例可发现,在赋值运算时,虽然圆括号的优先级比等于要高(详见下图),但是圆括号在运算过程中不起作业用。
可得:
括号1内result为后减,所以先进行加法运算,取值为3,然后自减为2;
括号2内result为先增,先获取括号1中result自减后的值再自增为3,然后3进行加法运算;
因此最后结果为 3 + 3 = 6;
此例需注意的点为括号对加法运算的作用。


浙公网安备 33010602011771号