• 小红书---操作符总结(3.2)


    1.后置递增和递减与前置递增和递减有一个非常重要的区别,即递增和递减操作是包含他们的语句被求值之后才执行;

    例如:

        var num1 = 2;
        var num2 = 20;
        var num3 = num1-- + num2 //22
        var num4 = num1   + num2 //21

    递增递减不仅适合于证书,还可以应用于字符串、布尔值、浮点数和对象

    ①.在应用于一个包含有效数字的字符串时,将变量转化为树脂字,在执行加减操作,字符串变成数字变量;

    ②.在应用于一个不包含数字字符串时,将变量的值设置为NaN,字符串变为数字变量;

    ③.在应用于布尔值false,先将其转换为0再执行

    ④.在应用于对象时,先调用valueof()方法

    2.按位非(~)

    var num1=25;
    var num2=~num1;
    alert(num2)  //-25

    3.逻辑非

        alert(!false); => true
        alert(!"blue"); => false
        alert(!0); => true
        alert(!NaN); => true
        alert(!""); => true
        alert(!132344); => false

    4.逻辑与(&&)

    ①.如果第一个操作数是对象,则返回第二个操作数

    ②.如果第二个数是对象,则只有第一个操作数的求值结果为true的情况下才会返回该对象

    ③.如果两个操作数都是对象,则返回第二个操作数

    ④.如果第一个操作数是NaN,则返回NaN

    ⑤.如果第一个操作数是undefined,则返回undefined

    5.逻辑或(||)

    ①.如果第一个是对象,则返回第一个操作数

    ②.如果第一个操作数的求值结果为false,则返回第二个操作数

    ③.如果两个操作数都是对象,则返回第一个操作数

    ④.如果两个操作数都是NaN,则返回NaN

    ⑤.如果两个操作数都是null,则返回null

    ⑥.如果两个操作数都是undefined,则返回undefined

    6.除法(-)

    ①.如果有一个操作数是NaN,则结果是NaN

    ②.如果是Infinity被Infinity除,结果是NaN

    ③.如果是零被零除,则返回NaN

    ④.如果是非零的有限数被零除,则结果是Infinity或-Infinity,取决于有符号操作数的符号

    ⑤.如果是infinity被任何非零数值除,结果是Infinity或-Infinity,取决于符号操作数的符号

    7.模(%)

    ①.如果被除数是无穷大值,而除数是有限大的,则NaN

    ②.如果被除数是优先打的而除数是0.则NaN

    ③.如果是Infinity 被Infinity除则NaN

    ④.如果被除数是有限大的,而除数是无线大,则是被除数

    ⑤.如果被除数是零,则结果0

    ⑥.如果有一个操作数不是数值,则在后台调用Number()转化为数值,然后再应用规则

    8.加性操作符

    ①.如果一个操作数是NaN =>NaN

    ②.如果Infinity加Infinity,则结果是Infinity

    ③.如果-Infinity加-Infinity ,则-Infinity

    ④.Infinity 加-Infinity =>NaN

    ⑤.+0 加 +0 => +0

    ⑥.-0 加-0 =>-0

    ⑦.+0 加-0 =>+0

    9.减法

    ①.如果有一个操作数是NaN,则结果是NaN

    ②.如果是Infinity减Infinity,则结果是NaN

    ③.如果是-infinity j减-Infinity,则结果是NaN

    ④.如果是Infinity 减-Infinity  =>Infinity 

    ⑤.如果是-infinity 减Infinity  =>-Infinity

    ⑥.+0 减 +0 =>+0 

    ⑦.-0 减+0 => -0

    ⑧.-0减-0 => +0

    ⑨.如果有一个操作数是对象,则调用valueof()方法,以取得表示该对象的数值,如果的到的是NaN则减法的结果就是NaN 

        var result1=5-true  //4
        var result2=NaN-1   //NaN
        var result3=3-2     //1
        var result4=5-""    //5
        var result5=5-"2"   //3
        var result6=5-null  //5
  • 相关阅读:
    django 2.0 path
    Django
    ORM
    Django简介
    web框架
    HTTP协议
    web应用
    索引
    pyMysql模块
    视图、触发器、存储过程、函数
  • 原文地址:https://www.cnblogs.com/moxiaowohuwei/p/7615787.html
Copyright © 2020-2023  润新知