自增和自减
自增和自减
一、自增 ++
通过自增可以使变量在自身的基础上增加1,对于一个变量自增以后,原变量的值会立即自增1。
自增分成两种:后++(a++)和 前++(++a);无论是a++ 还是 ++a,都会立即使原变量的自增1;不同的是a++ 和 ++a 的值不同:
a++ 的值等于原变量的值(自增前的值);++a 的值等于新值(自增后的值)
var d = 20;
console.log(d++); //20
console.log(++d); //21
// 20 + 22 + 22
var result = d++ + ++d + d;
console.log("result=" + result); //64
d = d++; //20 因为式子执行了右边之后d为21 而d++ 等于20 所以最后d的结果为 20
二、自减 –
通过自减可以使变量在自身的基础上减1
自减分成两种:后-- (a–) 和 前-- (–a);无论是a-- 还是 --a,都会立即使原变量的值自减1;不同的是a–和 --a 的值不同:
a-- 的值等于原变量的值(自减前的值);–a 的值等于原变量的新值(自减后的值)
var num = 10;
console.log(num--); //10
console.log(--num); //9
练习:
var n1 = 10, n2 = 20;
var n = n1++; //n1 = 11 n1++ = 10
console.log('n=' + n); //10
console.log('n1=' + n1); //11
n = ++n1; //n1 = 12 ++n1 = 12
console.log('n=' + n); //12
console.log('n1=' + n1); //12
n = n2--; //n2 = 19 n=20
console.log('n=' + n); //20
console.log('n2=' + n2); //19
n = --n2; //n2 = 18 --n2 = 18
console.log('n=' + n); //18
console.log('n2=' + n2); //18