运算符
运算符也叫操作符
通过运算符可以对一个或多个值进行运算,并获取运算结果
比如:typeof就是运算符,可以来获得一个值的类型,它会将该值的类型以字符串的形式返回
"number" "string" "boolean" "undefined" "object"
算数运算符
当对非Number类型的值进行运算时,会将这些值转换为Number然后在运算
任何值和NaN做运算都得NaN
+
+可以对两个值进行加法运算,并将结果返回
如果对两个字符串进行加法运算,则会做拼串,会将两个字符串拼接为一个字符串,并返回
任何的值和字符串做加法运算,都会先转换为字符串,然后再和字符串做拼串的操作
-
- 可以对两个值进行减法运算,并将结果返回
*
* 可以对两个值进行乘法运算
/
/ 可以对两个值进行除法运算
%
% 取模运算(取余数)
2、自增运算符
“++”是自增运算符,它指的是在原来值的基础上加1,i++表示“i=i+1”。该运算符有2种情况:
(1)i++
“i++”指的是在使用i之后,使i的值加1。
例子:
上面执行的结果:j的值为1,i的值为2。
其实上面代码等价于下面这一段代码:
(2)++i
“++i”指的是在使用i之前,先使i的值加1。
举例:
上面的执行结果:j的值为2,i的值为2。
其实上面代码等价于下面这一段代码:
一元运算符
一元运算符,只需要一个操作数
+ 正号
正号不会对数字产生任何影响
负号
负号可以对数字进行符号的取反
对于非Number类型的值,它会将先转换为Number,然后再运算
可以对一个其他的数据类型使用+,来将其转换为number,它的原理和Number()函数一样
逻辑运算符
逻辑运算符通常用于执行布尔运算,它们常常和比较运算符一起使用来表示复杂比较运算,这些运算涉及的变量通常不止一个,而且常用于if、while和for语句中。
&& :逻辑与,若两边表达式的值都为true,则返回true;任意一个值为false,则返回false
||: 逻辑或,只有表达式的值都为false,才返回false,其他情况返回true
!: 逻辑非,若表达式的值为true,则返回false;若表达式的值为false,则返回true
赋值运算符
JavaScript中的赋值运算可以分为2种:简单赋值运算和复合赋值运算。
简单赋值运算是将赋值运算符(=)右边表达式的值保存到左边的变量中。
复合赋值运算结合了其他操作(如算术运算操作)和赋值操作。
关系运算符
通过关系运算符可以比较两个值之间的大小关系,
如果关系成立它会返回true,如果关系不成立则返回false
大于号 >
判断符号左侧的值是否大于右侧的值
如果关系成立,返回true,如果关系不成立则返回false
大于等于 >=
判断符号左侧的值是否大于或等于右侧的值
< 小于号
<= 小于等于
非数值的情况
对于非数值进行比较时,会将其转换为数字然后再比较
如果符号两侧的值都是字符串时,不会将其转换为数字进行比较,而会分别比较字符串中字符的Unicode编码
相等运算符
相等运算符用来比较两个值是否相等,
如果相等会返回true,否则返回false
使用 == 来做相等运算
当使用==来比较两个值时,如果值的类型不同,则会自动进行类型转换,将其转换为相同的类型,然后再比较
不相等
不相等用来判断两个值是否不相等,如果不相等返回true,否则返回false
使用 != 来做不相等运算
不相等也会对变量进行自动的类型转换,如果转换后相等它也会返回false
===
全等
用来判断两个值是否全等,它和相等类似,不同的是它不会做自动的类型转换
如果两个值的类型不同,直接返回false
!==
不全等
用来判断两个值是否不全等,和不等类似,不同的是它不会做自动的类型转换
如果两个值的类型不同,直接返回true