美文网首页
JavaScript基本概念之操作符——乘性操作符

JavaScript基本概念之操作符——乘性操作符

作者: 胖胖冰 | 来源:发表于2017-05-18 14:49 被阅读22次

    ECMAScript定义了3个乘性操作符:乘法(*)、除法(/)和求模(%)。操作数在非数值的情况下会执行自动的类型转换(后台会先用Number()转型函数将其转换为数值)。

    • 1. 乘法
    var result = 34*56;
    

    在处理特殊值的情况下,乘法操作符遵循下列特殊的规则:

    • 如果操作数都是数值,执行常规的乘法计算,如果乘积超过了ECMAScript数值的表示范围,则返回Infinity-Infinity;
    • 如果有一个是是NaN,那么结果就是NaN;

    • 如果是Infinity与0相乘,则结果是NaN;

    • 如果是Infinity与非0相乘,则结果是Infinity-Infinity;

    • 如果是InfinityInfinity相乘,则结果是Infinity

    • 如果有一个操作数不是数值,则在后台调用Number()将其转换为数值,然后在应用上面的规则。

    • 2. 除法

    var result = 66 / 11;
    

    在处理特殊值的情况下,除法操作符遵循下列特殊的规则:

    • 如果操作数都是数值,执行常规的除法计算,如果商超过了ECMAScript数值的表示范围,则返回Infinity-Infinity;
    • 如果有一个是是NaN,那么结果就是NaN;
    • 如果是InfinityInfinity除,则结果是NaN;
    • 如果是0被0除,则结果是NaN;
    • 如果是非0的有限数被0除,则结果是Infinity-Infinity;
      -如果是Infinity被任何非0数值除,则结果是Infinity-Infinity;
    • 如果有一个操作数不是数值,则在后台调用Number()将其转换为数值,然后在应用上面的规则。
    • 3. 求模
    var result = 26 % 5;             //1
    

    在处理特殊值的情况下,求模操作符遵循下列特殊的规则:

    • 如果操作数都是数值,执行常规的除法计算,返回除得的余数;
    • 如果被除数是无穷大而除数是有限大数值,则结果是NaN;
    • 如果被除数是有限大而除数是0,则结果是NaN;
    • 如果是InfinityInfinity除,则结果是NaN;
    • 如果被除数是有限大而除数是无穷大数值,则结果是被除数;
      -如果被除数是0,则结构是0;
    • 如果有一个操作数不是数值,则在后台调用Number()将其转换为数值,然后在应用上面的规则。

    相关文章

      网友评论

          本文标题:JavaScript基本概念之操作符——乘性操作符

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