1、加法运算符
字符串和数字相加得到新的字符串
布尔类型true+true = 2
即false等于0;true等于1;
其他运算符 不会发生重载,都是先转为数字再进行数值运算。
对象的相加
如果运算子是对象,先将对象转为原始类型值,然后再相加。
对象先调用obj.valueOf(),然后调用toString()
特例:如果对象是Date的实例,那么会优先调用toString方法
2、余数运算符
1%2=1
运算结果的正负号由第一个运算子决定。可以使用取绝对值的方法来实现取余的结果。Math.abs(-5%2)===1
3、自增和自减运算符
var x = 1
var y = 1
++x //2 先自增再返回自增后的值
y++//1 先返回当前的值,再进行自增1
4、数值运算符和负数值运算符
将任何值转换为数值
+{}//NaN
+[]//0
-[]//-0
5、指数运算符
前一个运算符是底数,后一个运算符是指数
2** 4 = 16
多个指数运算符时是右结合
2** 4**2 = 65536
6、赋值运算符
一般情况下是“=”
x += y //x= x+y;