一元运算符:
只能操作一个值得运算符.
递增++,递减--
前置和后置的区别:
在没有赋值操作的时候,前置和后置是没有区别的.
存在赋值操作的时候:
var box=100++; //box=100
var nox=--100;//box=99
其他类型应用一元运算符的规则:
数值字符串自动转换成数值
字符串包含非数值转换成NaN
false-0;true-1
浮点数直接加1
对象如果不设置toString或valueof即为NaN
1.加和减运算符
加运算规则如下:
var box = 100; +box;//100,对于数值,不会产生任何影响
var box = '89'; +box;//89,数值字符串转换成数值
var box = 'ab'; +box;//NaN,字符串包含非数值转成NaN
var box = false; +box;//0,布尔值转换成相应数值
var box = 2.3; +box;//2.3,没有变化
var box = {//1,不设置toString或valueOf即为NaN
toString : function() {
return 1;
}
};+box;
减运算规则如下:
var box = 100; -box;//-100,对于数值,直接变负
var box = '89'; -box;//-89,数值字符串转换成数值
var box = 'ab'; -box;//NaN,字符串包含非数值转成NaN
var box = false; -box;//0,布尔值转换成相应数值
var box = 2.3; -box;//-2.3,没有变化
var box = {//-1,不设置toString或valueOf即为NaN
toString : function() {
return 1;
}
};-box;
加法和减法运算符一般用于算术运算,也可向上面进行类型转换。