javaScript-02

作者: Grandperhaps | 来源:发表于2020-10-11 21:29 被阅读0次

运算符

算数运算符

概念:算术运算使用的符号,用于执行两个变量或值的算术运算。


图片1.png
  • 浮点数的精度问题
    浮点数值的最高精度是 17 位小数,但在进行算术计算时其精确度远远不如整数。
var result = 0.1 + 0.2;    // 结果不是 0.3,而是:0.30000000000000004
console.log(0.07 * 100);   // 结果不是 7,  而是:7.000000000000001

所以:不要直接判断两个浮点数是否相等 !

递增和递减运算符

  • 前置递增运算符
    ++num 前置递增,就是自加1,类似于 num = num + 1,但是 ++num 写起来更简单。
    使用口诀:先自加,后返回值
var  num = 10;
alert(++num + 10);   // 21
  • 后置递增运算符
    num++ 后置递增,就是自加1,类似于 num = num + 1 ,但是 num++ 写起来更简单。
    使用口诀:先返回原值,后自加
var  num = 10;
alert(10 + num++);  // 20

比较运算符

概念:比较运算符(关系运算符)是两个数据进行比较时所使用的运算符,比较运算后,会返回一个布尔值(true / false)作为比较运算的结果。


图片2.png
  • 等号比较


    图片3.png

逻辑运算符

概念:逻辑运算符是用来进行布尔值运算的运算符,其返回值也是布尔值。后面开发中经常用于多个条件的判断


图片4.png
  • 逻辑与&&
    两边都是 true才返回 true,否则返回 false


    图片5.png
    图片6.png
  • 逻辑或 ||
    两边都是 true才返回 true,否则返回 false


    图片7.png
    图片8.png
  • 逻辑非 !
    逻辑非(!)也叫作取反符,用来取一个布尔值相反的值,如 true 的相反值是 false
var isOk = !true;
console.log(isOk);  // false
  • 短路运算(逻辑中断)
    短路运算的原理:当有多个表达式(值)时,左边的表达式值可以确定结果时,就不再继续运算右边的表达式的值;
    • 逻辑与
      语法: 表达式1 && 表达式2
      如果第一个表达式的值为真,则返回表达式2
      如果第一个表达式的值为假,则返回表达式1
console.log( 123 && 456 );        // 456
console.log( 0 && 456 );          // 0
console.log( 123 && 456&& 789 );  // 789
  • 逻辑与
    语法: 表达式1 || 表达式2
    如果第一个表达式的值为真,则返回表达式1
    如果第一个表达式的值为假,则返回表达式2
 console.log( 123 || 456 );         //  123
 console.log( 0 ||  456 );          //  456
 console.log( 123 || 456 || 789 );  //  123

赋值运算符

图片9.png

运算符优先级

图片10.png
  • 一元运算符里面的逻辑非优先级很高
  • 逻辑与比逻辑或优先级高

三元表达式

  • 语法结构
    表达式1 ? 表达式2 : 表达式3;
  • 执行思路
    • 如果表达式1为 true ,则返回表达式2的值,如果表达式1为 false,则返回表达式3的值
    • 简单理解: 就类似于 if else (双分支) 的简写

相关文章

  • JavaScript-02

    A 正则表达式(RegExp) Date对象 Function对象 document对象 window对象 定时器

  • JavaScript-02

    运算符和表达式 运算符总共 算术运算:+ - * / % ++ --关系运算:> < ...

  • javaScript-02

    运算符 算数运算符 概念:算术运算使用的符号,用于执行两个变量或值的算术运算。 浮点数的精度问题浮点数值的最高精度...

  • 每天一点JavaScript-02

    1.输出内容 document.write();// 用于直接向HTML输出流写内容,即直接在网页中输出内容 直接...

网友评论

    本文标题:javaScript-02

    本文链接:https://www.haomeiwen.com/subject/xytypktx.html