JavaScript中的自增、自减运算符
JavaScript中的自增、自减运算符
自增、自减运算符为一元运算符。
一元运算符:只能操作一个值的操作符称为一元操作符。
自增、自减操作符
自增、自减有两种类型:前置型和后置型。
前置型:将操作符置于变量前。
后置型:将操作符置于变量后。
例子:
var num = 20;
++num;
console.log(num); //21
console.log(num--); //21
console.log(num); //20
++num相当于num=num+1;
num–相当于num=num-1;
前置型是在进行算术运算之前再进行自增或自减运算。
后置型实在进行算术运算之后再进行自增自减运算。
以实际代码为例吧:
var a = 2,
b = 6,
c;
a++;
b--;
console.log(a); //3
console.log(b); //5
c = (a++) + (++b) + (a--) + (a+b) + b;
/*
对c的运算进行拆分
var a1 = a++; //3
var a2 = ++b; //6
var a3 = a--; //3
var a4 = a+b; //9
var a5 = b; //7
c = a1 + a2 + a3 + a4 + a5; //28
*/
console.log(c); //28
自增、自减运算符不仅适用于整数,还适用于字符串、布尔值、浮点数值和对象。在应用不同的值的时候,自增和自减操作符遵循以下规则:
- 在应用于一个包含有效数字字符的字符串时,先将其装换为数字值,再执行加减1的操作。字符串变量变成数值变量。
- 在应用于一个不包含有效数字字符的字符串时,将变量的值设置为NaN。字符串变量变成数值变量
- 在应用于布尔值true/false时,先将其转换为1或0再执行加减1的操作。布尔变量转换为数值变量。
- 在应用于浮点数值时,执行加减1的操作。
在应用于对象的时候,先调用对象的valueOf()方法以取得一个可供操作的值。
举个例子:var a1 = “2”;
var a2 =”w”;
var b1 = false;
var bin = 1.1;
var o ={valueOf:function(){
return -1;
}
};
a1++;
a2++;
b1++;
bin—;
o—;
console.log(a1); //3
console.log(a2); //NaN
console.log(b1); //0.10000000000000009
console.log(bin); //1.1
console.log(o); //-2
还没有评论,来说两句吧...