操作符
一元操作符
只能操作一个值得操作符叫做一元操作符
1.递增和递减操作符(–a/++a/a++/a–)
eg:
var num1=2;
var num2=20;
var num3=--num1 - num2 //21
eg2:
var num1=2;
var num2=20;
var num3=num1++ + num2 //22
var num3=num1 + num2 //23
在应用不同值时,递增和递减遵循下列规则:
- 应用于一个包含有效数字字符的字符串时,先将其转化为数字值,再执行加减1的操作。字符串变量变成数值变量。
- 在应用于一个不包含有效数字字符的字符串时,先将其转换为NaN。
- 在应用于布尔值是,转换为1和0。
- 在应用浮点整数值是,执行加减的操作
- 在应用动向是,先调用对象的valueof用法,以取得一个可供操作的值。然后对该值应予前述的规则。如果结果是NaN,则在调用tostring方法后在应用前述规则
一元加减操作符(+、-)
一元加操作以一个(+)来表示,放在数值前面,对数值没有任何影响
一元减主要用于表示负数
位操作符
按位非
用~表示,返回数值的反码
按位与
用&表示,对应为都是是1返回1,任何一位为0,返回0
按位或
用|表示,有1返回1
按位异或
用^表示,不同为1,相同为0
左移
用<<表示,补0
有符号的右移
用>>表示,保留符号位
无符号的右移
用>>>表示,对正数无影响,但对负数影响很大
布尔操作符
逻辑非
用!表示
逻辑非会先将操作数换位一个布尔值,然后对其求反
逻辑与(短路操作符)
用&&表示 有假为假
逻辑或
用||表示 ,有对则对