num-- 为后置,--num为前置。
前置递增或递减是在当前代码进行执行时先对原始值执行了递增或递减以后再执行下一步,后置是本行代码按照原始值执行,执行完再递增或者递减,等下次调用时才使用递增或递减后的值来执行。
例1:(前置递增递减)
let num1 = 2;
let num2 = 20;
let num3 = --num1 + num2;
let num4 = num1 + num2;
console.log(num1); //等于1
console.log(num3); //等于21
console.log(num4); //等于21
在以上代码中,num3之所以等于21是因为num1先减去了1才与num2相加。而变量num4也等于21是因为相应的加法操作使用了num1减去1之后的值。
例2:(后置递增递减)
let num1 = 2;
let num2 = 20;
let num3 = num1-- + num2;
let num4 = num1 + num2;
console.log(num1); //等于1
console.log(num3); //等于22
console.log(num4); //等于21
以上代码表明,后置递增递减和前置递增递减有一个非常重要的区别,即递增递减操作是在包含他们的语句被求值之后才执行的,这里计算num3时使用了num1的原始值(2)完成了加法计算,而num4则利用了递减之后的值(1)计算。
以上内容为作者个人理解,如有错误之处,还请各位大佬在公众号发送人工客服联系作者进行指正!!