3月16日 笔记

加法运算符

加法运算符“+”是最常用的运算符之一,但是使用却相对复杂。因为在Javascript中,加法运算符可以完成两种含义的操作,一种是算术的加法,一种是做字符串拼接。

如果运算子是个对象,先转成原始类型的值(即先执行该对象的valueOf方法,如果结果还不是原始数据类型,再执行toString方法)

toString()和valueOf()相关

两个运算子都是原始数据类型以后,只要有一个运算子是字符串,则两个运算子都转化为字符串,做字符串拼接操作。

否则,两个运算子都转化为数值,做算术加法运算。

赋值运算符

运算符 例子 等价于 结果
= x=y   x=5
+= x+=y x=x+y x=15
-= x-=y x=x-y x=5
*= x*=y x=x*y x=50
= x/=y x=x/y x=2
%= x%=y x=x%y x=0

比较运算符

比较运算符运算的结果是一个boolean值,表示是否满足条件。

运算符 含义
== 相等
=== 严格相等
!= 不等于
!== 严格不等于
< 小于
<= 小于等于
> 大于
>= 大于等于

关于==和===

相等运算符比较两个值是否相等,严格相等运算符比较他们是否为“同一个值”。如果两个值不是同一类型,严格相等运算符直接返回false,而相等运算符会将他们转成同一数据类型,再用严格相等运算符进行比较。

布尔运算符

将表达式转为布尔值
取反运算符!、且运算符&&、或运算符||、三元运算符?

1.取反运算符

取反运算符有转换数据类型的作用。

对于或和且的理解:对于两个boolean类型的数据

或:有一个真即真;且:有一个假即假

2.且运算符“&&”

规则:如果第一个运算子的布尔值为true,则返回第二个运算子的值(注意是值,不是布尔值);如果第一个运算子的布尔值是false,则返回第一个运算子的值,且不再对第二个运算子求值。

3.或运算符“||”

规则:如果第一个运算子的布尔值为true,则返回第一个运算子的值,且不再对第二个运算子求值;如果第一个运算子的值为false,则返回第二个运算子的值。





猜你喜欢

转载自blog.csdn.net/wangjianxin1234/article/details/79580552