算数运算符
算数运算符
运算符可以用来对一个或多个操作数进行运算
算数运算符:
+ - * /加减乘除**幂运算%模运算,两个数相除取余数
注意:
- 算数运算时,除了字符串的加法,其他运算的操作数是非数值时,都会转换为数值然后再运算
- JS是一门弱类型语言,当进行运算时会通过自动的类型转换来完成运算
a = 10 - "5" // 10 - 5
a = 10 + true // 10 - 1
a = 5 + null // 5 + 0
a = 6 - undefined // 6 - NaN当任意一个值和字符串做加法时,它会先将其他值转换为字符串,然后再做拼串的操作,可以利用这一特点来完成类型转换
- 可以通过为 任意类型 + 一个空串 的形式来将其转换为字符串,其原理和String()函数相同,但使用起来更加简洁
a = 123 + "";
console.log(typeof a, a); // string "123"
一元的加减
+正号- 不会改变数值的符号
-负号- 可以对数值进行符号位取反
- 当我们对非数值类型进行正负运算时,会先将其转换为数值然后再运算
let a = "123";
a = +a; // a = Number(a)
console.log(typeof a, a); // number 123
自增和自减
++自增运算符++使用后会使得原来的变量立刻增加1- 自增分为前自增(
++a)和后自增(a++) - 无论是
++a还是a++都会使原变量立刻增加1 - 不同的是
++a和a++所返回的值不同a++是自增前的值 旧值++a是自增后的值 新值
--自减运算符- 参考自增
let a = 10;
a++;
console.log(a); // 11
let b = 10;
let c = b++;
console.log("b++ =", c); // b++ = 10
let d = 10;
let e = ++d;
console.log("++d =", e); // ++d = 11
let n = 5;
let result = n++ + ++n + n // 5 + 7 + 7
console.log(result); // 19