JavaScript-运算符-逻辑语句-if-三元表达式-switch语句

  1. 算术运算符 + - * / %
    2.2 浮点数的精确度最高是17位小数,但在进行运算时精确度远远不如整数
    不要直接判断两个浮点数是否相等!
    2.3 一个数被另一个数整除的话余数为0,这就是%取余运算符的主要用途
    算术运算符优先级,先乘除,后加减,有小括号先算小括号里面的
    2.4 表达式最终都会有一个结果,返回给我们,我们称为返回值

  2. 递增和递减运算符
    3.1 递增++ 后置递增运算符 先自加,后返回值 先人后己
    ++递增 前置递增运算符 先返回值,后自加 先己后人
    开发时,大多使用后置递增/减,且代码独占一行,列如:num++;或者num–;

  3. 比较运算符
    4.1 概述
    两个数据进行比较时使用的运算符,比较运算后,会返回一个布尔值(true/false)作为比较运算的结果
    < > >= <= ==判断号(会转型) != ===全等,值和数据类型都一致 !==全不等,值和数据类型都一致
    4.2 =小结
    符号 作用 用法
    = 赋值 把右边给左边
    == 判断 判断两边值是否相等(注意此时有隐式转换)
    === 全等 判断两边的值和数据类型是否完全相同
    console.log(18 == ‘18’);
    console.log(18 === ‘18’);

  4. 逻辑运算符
    && 与 and
    || 或 or
    ! 非 not

5.4 短路运算(逻辑中断)
原理:当有多个表达式(值)时,左边的表达式值可以确定结果时,就不再继续运算右边的表达式值
1. 逻辑与
语法:表达式1 && 表达式2
如果第一个表达式值为真,则返回表达式2
如果第一个表达式值为假,则返回表达式1
2. 逻辑或
语法:表达式1 || 表达式2
如果第一个表达式值为真,则返回表达式1
如果第一个表达式值为假,则返回表达式2

  1. 赋值运算符
    把数值赋值给变量的运算符
    赋值运算符 说明 案例
    = 直接赋值 var usrName=‘我是指’;
    +=,-= 加,减,一个数后在赋值 var age=10; gae+=5; // 15
    =,/=,%= 乘,除,取模后在赋值 var age=2; age=5; // 10

  2. 运算符优先级
    优先级 运算符 顺序
    1 小括号 ()
    2 一元运算符 ++ == !
    3 算术运算符 先 * / % 后 + -
    4 关系运算符 > >= < <=
    5 相等运算符 == != === !==
    6 逻辑运算符 先 && 后 ||
    7 赋值运算符 =
    8 逗号运算符 ,
    一元运算符里面的逻辑非优先级很高
    逻辑与比逻辑或优先级高

  3. 流程控制
    顺序结构,分支结构,循环结构

3.1 分支结构
3.2 if语句
案例:判断是否为闰年
var year = prompt(‘请您输入年份:’);
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
alert(‘您输入的年份是闰年’);
} else {
alert(‘您输入的年份是平年’);
}

  1. 三元表达式

  2. 语法:表达式1 ? 表达式2 : 表达式3;

  3. 如果表达式1为true,则返回表达式2的值,如果表达式1为false,则返回表达式3的值
    类似于 if else(双分支)的简写

  4. 分支流程控制switch语句
    switch (表达式) {
    case value1:
    执行语句1;
    break;
    case value2:
    执行语句2;
    break;

    default:
    执行最后的语句;
    }
    5.1 语法结构
    switch:开关 转换 , case:小例子 选项
    关键字switch后面括号内可以是表达式或值,通常是一个变量
    关键字case,后跟一个选项的表达式或值,后面跟一个冒号
    switch表达式的值会跟结构中的case的值作比较
    如果存在匹配全等(===),则与该case关联的代码块会被执行,并在遇到break时停止,整个switch语句代码执行结束
    如果所有case的值都和表达式的值不匹配,则执行default里的代码
    注意:执行case里面的语句时,如果没有break,则继续执行下一个case里面的语句

5.2 switch和if else if语句的区别
一般情况下,两个语句可以互换
switch…case语句通常处理擦色为比较确定值的情况,而if…else…语句更加灵活,常用于范围判断(大于,等于某个范围)
switch语句进行条件判断后直接执行到程序的条件语句,效率更高.而if…else语句有几种条件,就得判断多少次
当分支比较少时,if…else语句的执行效率比switch语句高
当分支比较多时,switch语句的执行效率比较高,而且结构更清晰

你可能感兴趣的:(JavaScript)