1.什么是运算符?
在js里面进行运算操作的符号叫运算符。
2.运算符的分类:
算术运算符
逻辑运算符
比较运算符
赋值运算符
条件运算符
3.算术运算符
+ - * / % ++ --
+ 加号
加号具有隐形转义的功能,主要针对是字符串数据,两个++号可以将字符串数字转义成number类型
任何数据类型和字符串相加都是字符串拼接
举例: alert(1+ +'2');
- 减号
减号具有隐形转义的功能,主要针对是字符串数据,任何数字字符串相减就会变成number类型
负负得正
举例: alert(1--1)
* 乘号
/ 除号 任何数除以0都是Infinity(无限),0除任何数都是0
% 余号
大余小,正常解,小余大,取小
0余字符串,undefined,null,0,false的答案都是NaN,余其他数都是0
任何数余0都是NAN
a%b的结果,先看a是大数还是小数,在看a是正数还是负数!
举例: -7%2
a是大数正常解,a是小数,取小,再看正负!
++ 自增
在运算过程中,符号在后先不做运算,符号在前先做运算!
后面的变量去看前面相同变量的全部!
举例:
var c = a++ + b + a;
1+ 1+ 2
-- 自减
4、比较运算符
比较运算符的基本操作过程是:
首先对操作数进行比较,
该操作数可以是数字也可以是字符串,
然后返回一个布尔值true或false。
真 假
1 0
< 4<5 true
> 4>5 false
<= 5<=5 true
=>
=>和<= 这两个符号条件满足一个即为true
= 赋值 (等号右边是值,左边是变量,右边永远赋值给左边)
== 等于(只比较双方的值,不比较类型)
=== 全等(即比较双方的值,又比较类型)
!= 不等于
!== 严格不等于
在比较运算符里面会把布尔值看成 数字 0/1
5、赋值运算符
= a="1"
+= a+=b等价于a=a+b
-= a-=b等价于a=a-b
*= a*=b等价于a=a*b
/= a/=b等价于a=a/b
%= a%=b等价于a=a%b
这些符号既有赋值功能又有运算功能!
&= a&=b等价于a=a&b(&是逻辑与运算)
|= a|=b等价于a=a|b(|是逻辑或运算)
对于最后2个,平常不经常用,忽略掉算了
6、 逻辑运算符通常用于执行布尔运算,
它们常常和比较运算符一起使用来表示复杂比较运算,
这些运算涉及的变量通常不止一个,而且常用于if、while和for语句中。
&&
逻辑 与,
若两边表达式的值都为true,
则返回true;
任意一个值为false,
则返回false
||
逻辑 或,
只有表达式的值都为false,
才返回false,
其他情况返回true
!
逻辑非,
若表达式的值为true,
则返回false;
若表达式的值为false,
则返回true
7.条件运算符(三目运算法,三元)/条件表达式
语法: 条件 ? 表达式1 : 表达式2;
正确的情况下,返回表达式1,
错误的情况下,返回表达式2,
var a=1<2?‘正确’:‘错误’