运算符
JS中的运算符分为:算术/赋值/关系/逻辑/字符串
算术运算符
算术运算符: +加法 -减法 *乘法 /除法 %取余
var a = 1, b = 2;
a + b = 3
a - b = -1
a * b = 2
a / b = 0.5
a % b = 1
目测,跟数学中的运算符是一样的。但是:
var a = "1", b = "2";
a * b = 2
a / b = 0.5
a - b = -1
a + b = ???
+号,有两层意思.
第一层算数之间的加法;
第二层字符串的连接;执行过程中,先检测加号两边的数据类型,如果发现字符型,那就先 生效字符的连接
数据类型转换:强制转换、隐式转换
赋值运算符:
= += -+ *= /= %=
关系运算符: 结果是bool值,用于判断
< <= > >= == != ===
逻辑运算符
&& || !
console.log(x>5 && y>5);
两边都要满足条件才能成立,返回true
console.log(x>5 || y>5);
两边只要有一个满足条件就能成立,返回true
console.log(!(x>y));
一元运算符
自增(++)/自减(--)运算
a++表示在a原有的基础上增加1
相当于: a = a+1;
a--表示在a原有的基础上减小1
相当于: a = a-1;
var a=1;
a++; // a= a+1
console.log(a); 2
例2:b=2;输出b--的值
var b=2;
b--; // b=b-1
console.log(b); 1
前自增与后自增有本质的区别,他们相同点都是为自身加了1,
不同点是
前自增是先加1,再使用操作数的值
后自增是先使用操作数的值,再加1
三元运算符
条件表达式?语句一:语句二;
条件表达式是否成立,成立输出语句一的值,否则输出语句二的值
如果条件表达式的值是非布尔值,会先转换成布尔值