操作符包括
- 算术操作符
- 位操作符
- 关系操作符
- 相等操作符
一元操作符
一元操作符只有一个操作数
1.递增(++)和递减(–)操作符
可用于字符串、布尔值、浮点数、整数和对象,操作数自加1或自减1
分为:前置型、后置型
- 前置型
在语句中,前置型先进行自加或自减,再执行操作
var age=29;
++age; //30
--age; //29
- 后置型
在语句中,先进行操作,再进行自加或自减
var age=29;
age++; //30
age--; //29
单独看不能发现两者的区别,看以下例子,能够明显的看出前置与后置的区别:
var age1=29;
var anotherAge1= --age + 2; //30
var age2=29;
var anotherAge2= age-- + 2; //31
递增和递减操作遵循规则:
应用于包含有效数字字符的字符串时,先将其转换为数字值,再执行加减1的操作
应用于不包含有效数字字符的字符串时,将变量的值设置为NaN
应用于boolean值时,先将其转换为数值,在执行操作
应用于浮点数时,直接执行操作
应用于对象时,先调用valueOf(),如果结果正确,直接执行操作;如果结果为NaN,调用toString()在执行操作
2.一元加减操作
- 当将一元加操作符放在数值前,对数值不会产生任何影响;在对非数值应用一元加操作符时,该操作符会像Number()转型函数一样对这个值进行转换
- 一元减操作符主要用于表示负数,一元减操作符的转换规则和一元加操作符一样
var s1 = +"01"; //1
var s2 = +1.1; //1.1
var s3 = +"1.1"; //1.1
var s4 = +"z; //NaN
var s5 = +false; //0
var s6 = {
valueOf:function(){
return -1;
}
};
s6=+s6; //-1
var s1 = -"01"; //-1
var s2 = -1.1; //-1.1
var s3 =