1、算术运算符
(1)基本算术运算
<script> console.log(1 + 23); console.log(1 - 23); console.log(1 * 23); console.log(4 / 2); console.log(23 % 2); </script>
(2)浮点数的不精确问题
<script> console.log(0.1 + 0.2); </script>
在js中要尽量避免浮点数的使用
(3)不要比较两个浮点数是否相等
<script> console.log((0.1+0.2)==0.3); </script>
2、递增和递减运算符
<script> var num=122; console.log(num++); console.log(++num); var num1=121; console.log(--num1); console.log(num1--); </script>
运算符的前置和后置是不一样的,前置的话是先执行加或键操作再输出,而后置的时候是先输出再执行加或减的操作。
3、比较运算符
(1)基本比较运算
<script> console.log(12>23); console.log(12>=12); console.log(12!=23); console.log(12==12); </script>
(2)默认转换数据类型
<script> console.log(12=='12'); </script>
会将字符串转换为数字类型的数据,只要求值相等,数据类型不要求
console.log(12==='12');
全等于的时候为false,要求值和数据类型一致
(3)==与===
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Java Script</title> <script type="text/javascript"> function welcome() { var num1=23; var num2="23"; alert(num1==num2) } </script> </head> <body onload="welcome()" bgcolor="aquamarine"> <center> <h1>你好</h1> </center> </body> </html>
该程序的运算结果返回true,虽然两个变量的数据类型不同,也就是说“==”值比较两个变量的数值,不对类型进行判断。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Java Script</title> <script type="text/javascript"> function welcome() { var num1=23; var num2="23"; alert(num1===num2) } </script> </head> <body onload="welcome()" bgcolor="aquamarine"> <center> <h1>你好</h1> </center> </body> </html>
运行上面代码返回false,也就是说“===”不仅比较数值,还对数据类型进行比较。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Java Script</title> <script type="text/javascript"> function welcome() { var num1=23; var num2="23"; alert(num1!==num2) } </script> </head> <body onload="welcome()" bgcolor="aquamarine"> <center> <h1>你好</h1> </center> </body> </html>
“!==”也是对数值和类型同时进行判断。
4、逻辑运算符
逻辑运算符是用来进行布尔值运算的运算符,返回值是布尔类型
<script> console.log(true&&true); console.log(true&&false); console.log(true||false); console.log(!false); </script>
- &&相当于 与运算
- || 相当于 或运算
- ! 相当于取非
&&和||存在短路运算,例如:在进行&&运算的时候如果&&前面的表达式为false的话,就不再对表达式后面的表达式进行计算了,因为&&要求前后的表达式都为true才能输出true,既然第一个为false,那么计算结果就肯定为false,后面一个表达式已经不能改变运算的结果了
5、赋值运算符(右赋值给左)
(1)基本赋值运算
<script> var num=10; console.log(num); </script>
(2)其他操作
num=num+3
<script> var num=10; console.log(num+=3); </script>
num=num*3
console.log(num*=3);
6、运算符的优先级
小括号
一元运算符:++、--、!
算术运算符:+、-、*、/
关系运算符:大于、小于等
相等运算符:==、!=、===、!==
逻辑运算符:&&比||优先级高
赋值运算符
逗号运算符