JS基本概念 -- 操作符 -- 乘性操作符

ECMAScript乘性操作符解析
本文详细介绍了ECMAScript中的三种乘性操作符——乘法、除法及求模的操作规则,包括数值运算、边界情况处理以及非数值类型转换等内容。

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

  1. 乘法乘法操作符由一个星号( * )表示,用于计算两个数值的乘积。
    //1.如果两个操作数都是数值,执行常规的乘法计算
    var result = 23 * 2;
    alert(result);    //46
    
    //2.如果两个操作数都是数值,并且乘积超过了ECMAScript数值的表示范围,返回Infinity或-Infinity
    var result1 = -Number.MAX_VALUE *Number.MAX_VALUE;
    alert(result1);    //-Infinity
    
    //3.如果有一个操作数是NaN,结果为NaN
    var result2 = NaN * 2;
    alert(result2);    //NaN
    
    //4.如果是Infinity与0相乘,结果是NaN
    var result3 = result1 * 0;
    alert(result3);    //NaN
    
    //5.如果是Infinity与非0数值相乘,结果为Infinity或-Infinity
    var result4 = result1 * 3;
    alert(result4);    //-Infinity
    
    //6.如果是Infinity与Infinity相乘,结果是Infinity
    var result5 = result1 * result1;
    alert(result5);    //Infinity
    
    //7.如果有一个操作数不是数值,则在后台调用Number()将其转换为数值,然后在应用上面的规则。
  2. 除法除法用一个斜线符号表示( / )。
    //1.如果操作数都是数值,执行常规的除法计算
    var result = 6 / 3;
    alert(result);    //2
    
    //2.如果商超过了ECMAScript数值的表示范围,在返回Infinity或-Infinity
    
    //3.如果有一个数是NaN,则结果是NaN
    var result1 = NaN / 2;
    alert(result1);    //NaN
    
    //4.如果是Infinity 被Infinity除,结果是NaN
    var result2 = Infinity / Infinity;
    alert(result2);    //NaN
    
    //5.如果是零被零除,结果是NaN
    var result3 = 0 / 0;
    alert(result3);    //NaN
    
    //6.如果是非零有限数被零除,则结果是Infinity或-Infinity
    var result4 = 4 / 0;
    alert(result4);    //Infinity
    
    //7.如果有一个操作数不是数值,则在后台调用Number()将其转换为数值

    alert(Infinity / 5);  //Infinity
    alert(5 / Infinity);  //0
  3. 求模

    求模(求余)操作符由一个百分号( % )表示。

    //1.如果操作数都是数值,执行常规计算,返回余数
    alert(6 % 4);    //2
    
    //2.被除数是无限大,除数是有限大数值,结果NaN
    alert(Infinity % 5);    //NaN
    
    //3.被除数有限大数值,除数无限大,结果是被除数
    alert(6 % Infinity);    //6
    
    //4.被除数是有限大的数值,除数是零,结果是NaN
    alert(6 % 0);    //NaN
    
    //5.被除数是0,结果为0
    alert(0 % 2);    //0
    alert(0% Infinity);    //0
    
    //6.Infinity 被Infinity除,结果是NaN
    alert(Infinity % Infinity);    //NaN
    
    //7.如果有一个操作数不是数值,则在后台调用Number()将其转换为数值,在应用上面规则

     

转载于:https://www.cnblogs.com/PrajnaParamita/p/5841093.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值