javas运算符
单目
自增:a++
a++和++a : ++在前优先级最高,++在后优先级最低(比赋值符=还低)
res=a++ 先将a的值赋值给res,a再自增1
res=++a a先自增1,再将a的值赋值给res
a--和--a同理
双目:+、-、*、/、%;
其中 -、*、/、%如果运算符两侧的值为数字型,可进行正常的数值运算
console.log("3"-1) ==》 2
如果存在纯数字字符串(如:"12"),计算机自动转其为数字型进行运算
console.log("12"-1) console.log("12"%1) ==》 11 0
只要有一侧为非纯数字字符串,结果为NaN。
console.log("3a"-1); ==》 NaN
比较运算符
比较运算符的运算结果是布尔值(true或false)
1>2; false 2>=2; true 10%2==0; true 10%2=='0'; true 10%2==='0' false
注意:
“=”是赋值号。如:a = 10
“==”等于。只比较两个变量的值,而不管类型。只要值一样,就返回true,否则返回false
“===”全等于。既比较变量,也判断类型。如果类型和值都一样,返回true,否则返回false。
逻辑运算符:&&、||、!!
&&逻辑与: 如果左右两个两个条件同时满足时,则结果为true,否则,结果为false
console.log(6>7&&5); console.log(6<7&&5); console.log(5&&6<7); console.log(6>7&&5); ==> false 5 true false
|| 逻辑或 :如果左右两个两个条件有一个满足时,则结果为true,否则,结果为false
console.log(6>7||5);
console.log(6<7||5);
console.log(5||6<7);
console.log(6>7||5);
==》
三元运算符
结构:条件 ? 结果1 : 结果2
res = 10 == '10' ? '相等' : '不等';
console.log(res);
==>