JavaScript 学习笔记之操作符(续)

一、乘性操作符

1、乘法:*

乘法操作符的一些特殊规则:

如果操作数都是数值,按照常规的乘法计算,如果乘积超过了ECMAscript数值的表示范围,则返回infinity或者-infinity
如果有一个操作数是NaN,那返回结果就是NaN
如果是infinity与0相乘,返回NaN
如果infinity与非0数相乘,返回infinity或者-infinity
infinity与infinity相乘,返回infinity
如果有一个操作数不是数值,后台会先调用number()将其转化为数值,再应用上面的规则

复制代码 代码如下:


<script type="text/javascript">
  
       alert(5 * 6);           //30
       alert(5 * NaN);         //NaN
       alert(Infinity * 0);    //NaN
       alert(Infinity * 2);    //Infinity
       alert("5" * 5);         //25
       alert(true * 10);       //10
       alert(false * 10);      //0
     
   </script>

2、除法:/

除法操作符的一些特殊规则:

如果操作数都是数值,按照常规的除法计算,如果商超过了ECMAscript数值的表示范围,则返回infinity或者-infinity
如果有一个操作数是NaN,那返回结果就是NaN
如果是infinity被infinity除,返回NaN
如果是0被0除,返回NaN
如果是非0的有限数被0除,返回infinity或者-infinity
如果是infinity被非0的有限数除,返回infinity或者-infinity
如果有一个操作数不是数值,后台会先调用number()将其转化为数值,再应用上面的规则

复制代码 代码如下:


  <script type="text/javascript">
         alert(5 / 5);           //1
         alert(5 / NaN);         //NaN
         alert(Infinity / Infinity);    //NaN
         alert(Infinity / 2);    //Infinity
         alert(5 / 0);           //Infinity
         alert(10 / true);       //10
         alert(10 / false);      //Infinity
     </script>

3、求模(余数):%

求模操作符的一些特殊规则:

如果操作数都是数值,按照常规的除法计算,返回除得的余数
如果被除数是无穷大,除数是有限数,那返回结果就是NaN
如果被除数是有限大,除数是0,返回NaN
如果是infinity被infinity除,返回NaN
如果被除数是有限大而除数是无穷大,返回被除数
如果被除数是0,返回0
如果有一个操作数不是数值,后台会先调用number()将其转化为数值,再应用上面的规则

复制代码 代码如下:


<script type="text/javascript">
  
       alert(26 % 5);          //1
       alert(Infinity % 3);    //NaN
       alert(3 % 0);           //NaN
       alert(5 % Infinity);    //5
       alert(0 % 10);          //0
       alert(true % 25);       //1
       alert(3 % false);       //NaN
     
   </script>

二、加性操作符

1、加法操作符:+

如果操作数中有一个是字符串:

如果两个操作数都是字符串,那么将第二个操作数拼接到第一个操作数后面。
如果只有一个操作数是字符串,那么将另一个操作数转化为字符串后再执行上述规则

复制代码 代码如下:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wgxzwz.html