0
点赞
收藏
分享

微信扫一扫

JS第五讲--运算符

女侠展昭 2022-02-05 阅读 96

五、运算符

(一)运算符导读

 

(二)算数运算符

运算符也被称为操作符,是用于实现赋值,比较和执行算术运算等功能的符号.

JS中的常用运算符有:

算术运算符:

与其它语言一样,JS浮点数运算是不精确的,会有微小的误差.

var result=0.1+0.2; 结果不是0.3,是0.3000000000000000004

也不能用浮点数比较是否相等,尽量避开

var num=0.1+0.2;
console.log(num==0.3); //结果为false

(三)表达式和返回值

表达式:是由数字,运算符,变量等以能求得数值有意义的排列方法所得的组合

表达式最终都会有一个结果返回给我们,称为返回值.

(四)递增递减运算符

  1. 前置运算符

    将递增递减运算符放在变量前面

    ++num;
    --num;

    返回值为num+1.先自加,再返回值

    var p=10;
    console.log(++p+10);
    //返回值为21

  2. 后置运算符

    递增递减运算放在变量后面

    num++;
    num--;

    返回值为num,然后num才+1.先返回值,再自加

    var p=10;
    console.log(p++ +10);
    //返回值为20

开发时,大多使用后置递增.

(五)比较运算符

比较运算符也叫关系运算符.是将两个数据比较时用的运算符.比较运算后,会返回一个布尔值作为比较运算的结果。

注意:如果只是单纯的比较大小,是不能比较出类型的不同的.因为js是弱类型语言,会默认转换数据类型.

如果要判断是否完全一样,要用全等"===",因为它要求值和数据类型完全一样

console.log(18=='18'); //结果为true
console.log(18==='18'); //结果为false

(五)逻辑运算符

逻辑运算符是用来进行布尔值运算的运算符,其返回值也是布尔值,经常用于多个条件的判断.

如果是两个number进行运算,0看作false,其他的都看作true.

其他的,'',null,undefined,NaN看作false,其他的看作true

返回的值不是true或false,而是返回表达式!!!当然,返回的表达式的布尔值与总的布尔值相同

JS中有一种特殊情况叫逻辑中断(短路运算):当有多个表达式时,当左边的表达式可以确定运算结果时,不再继续运算右边的表达式

  1. 逻辑与短路运算:

    • 语法: 表达式1 && 表达式2

    • 如果第一个表达式的值为true,则返回表达式2

    • 如果第一个表达式的值为false,则返回表达式1

    console.log(0&& 1+2 && 456*789);
    //第一个是0,后面的短路,不再运算
    //返回值为0
  2. 逻辑或短路运算:

    • 语法:表达式1 ||表达式2

    • 如果第一个表达式的值为true,则返回表达式1

    • 如果第一个表达式的值为false,则返回表达式2

    console.log(123 || 456 || 789);
    //返回值为123.注意,返回值不是true,是123
    console.log(0 ||456 ||789);
    //返回值为456.

(六)赋值运算符

把右边的数据赋值给左边

(七)运算符优先级

优先级排行:

  1. 小括号:()

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

  3. 算术运算符: 先乘除后加减

  4. 关系运算符: > < >= <=

  5. 相等运算符: = = ! = = = = ! = =

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

  7. 赋值运算符: =

  8. 逗号运算符: ,

注意:逻辑与的优先级比逻辑或高!!!

举报

相关推荐

0 条评论