JS的运算符

65 阅读3分钟

JS的运算符

1.算数运算符

  • 加 +
  • 减 -
  • 乘 *
  • 除 /
  • 取余(求余数)%

注意:+运算符,相加时如果两边都是数字,那么会运算数字的相加操作;相加时如果两边有一个不是数字的,比如出现一个字符串,那么运行的不是相加,而是拼接

拼接操作只有+运算时会出现,其他符号不会出现

其他运算符在遇到两边有非数字类型时,会将其转换为数字(这一步就叫做隐式转换),然后再运算

2.赋值运算符

  • =
  • +=
  • -=
  • *=
  • /=
  • %=

以+= 为例,相当于是“我自身”加上一个新值,就可以用这个+=来优化,例子:a=a+10 优化:a+=10

3.比较运算符

比较运算符两边的值之后,返回一个布尔值,也就是返回一个true或者false

  • 大于 >
  • 小于 <
  • 大于等于 >=
  • 小于等于 <=
  • 等于 ==/===
  • 不相等 != / !==

注意:=赋值号

在JS中,等号出现两次或者三次时代表等于的意思

==在JS中判断时会做隐式转换,也就是说,只会对比值是否相等,不会对比数据类型

===在JS中也叫做全等,在判断的时候不会做隐式转换,也就是说,在对比时除了会对比值是否相等,还会判断数据类型

!= 和 !==

  • 共同点:

    判断符号两边的值是否不相等,不相等是返回true,相等时返回false

  • 不同点:

    !=不会对比数据类型

    !==会对比数据类型

4.逻辑运算符

&& 逻辑与(相当于并且的意思)

逻辑与运算符的特性!!!
   符号左边的值 如果为真(也就是转为布尔值后为true),那么会返回符号右边的值
                如果为假(也就是转为布尔值后为false),那么会将自身返回出去
                

|| 逻辑或(相当于或者的意思)

逻辑或运算符的特性!!!
   符号左边的值 如果为真(也就是转为布尔值后为true),那么会将自身返回出去
                如果为假(也就是转为布尔值后为false),那么会将符号右边的值返回出去

! 逻辑非(取反,反义词)

逻辑非运算符的特性
      语法:!值
      返回值:将值转换为布尔值之后,做一个取反的操作,也就是true改变为falsefalse改变为true0即为真!!!    

5.自增自减运算符

  • ++ 自增运算符的能力就是将自身的值+1

  • -- 自减运算符的能力就是将自身的值-1

    语法:(自增自减都是相同的语法,这里拿自增为例)
    1.++值
    2.值++
    
    自增自减运算符 写法不同,运行结果也不同
      1.++值(++在前)
        如果++在前,那么会先将自身的值+1,然后参与其他的
      2.值++(++在后)
        如果++在后,那么会先参与周围的运算,然后将自身的值+1
        
    *自减运算符在前与在后的作用与自增运算符完全相同,只不过是-1
    

运算优先级

1.小括号优先级最高

2.一元运算符 ++ -- !

3.算术运算符 先* / % 后 + -

4.比较运算符(大于小于)> >= < <=

5.比较运算符(等于不等于)== != === !==

6.逻辑运算符 先&& 后||

7.赋值运算符 = += -= *= /=