js运算符及运算符优先级 分支语句

121 阅读2分钟

1. js运算符

1.1 算术运算符( + / - / * / / / % )

  • 隐式转换: JS 内部帮助我们转换的
  • 显式转换: 我们自己手动通过方法转换数据类型
  • 除了加法数据类型不是 number 类型时会进行拼接, 其他都不会拼接, 会隐式转换

1.2 赋值运算符( = / += / -= / *= / /= / %= )

a+=1 a=a+1
a -=1 a=a-1
a *=1 a=a *1
a /= 1  a=a/1
a %=1 a=a%1

1.3 比较运算符( > / < / >= / <= / == / === / != / !== )

!= 不等于
!== 不全等于
== 等于
= 赋值
=== 全等

1.4 逻辑运算符( && / || / ! )

  • 逻辑非 改变变量值的布尔类型
  • 逻辑与
    • 前一个为真, 就返回后一个
    • 前一个为假, 就返回第一个
  • 逻辑或
    • 前一个为真(左侧为真), 返回左侧
    • 前一个为假(左侧为假), 会返回右侧(后一个, 第二个)

1.5 自增自减运算符( ++ / -- )

  • ++ 在前, 先运算自增, 然后参与周围表达式
  • ++ 在后, 先参与周围表达式运算, 然后自增1

1.6 运算符优先级

  1. 小括号     ()
  2. 一元运算符   ++ -- !
  3. 算术运算符   先* / % 再+ -
  4. 关系运算符   > >= < <=
  5. 赋值运算符   == != === !==
  6. 逻辑运算符   先&& 后||
  7. 赋值运算符   =
  8. 逗号运算符   ,

2. 分支语句

2.1 if 分支语句

if (条件) {

}else if {

}else if {

}else {

}
        var a = 4;
        if (a == 1) {
            console.log(1)
        } else if (a == 2) {
            console.log(2);
        } else if (a == 3) {
            console.log(3);
        } else {
            console.log(100);
        }

2.2 switch 分支语句

switch(a) {
    case 1:
        ......;
        break;
    case 2:
        ......;
        break;
        }
        var a = 1
        switch (a) {
            case 1:
                console.log('a为1');
            case 2:
                console.log('a为2');
            case 3:
                console.log('a为3');
            case 4:
                console.log('a为4');
            case 5:
                console.log('a为5');
            case 6:
                console.log('a为6');

        }
  1. switch...case 使用严格的全等,会对比数据类型
  2. switch...case 据有穿透性,当不写break;时,会从满足条件的case开始执行直到执行到最后为止。

2.3 三元表达式(三目, 三目运算符, 问号冒号表达式)(重点)

条件 ?满足条件时执行 :不满足条件时执行;

        var num = false
        num == 1
            ? console.log('请求回来的数据为1,满足条件')
            : console.log('请求回来的数据不为1,不满足条件');