乘性操作符
乘法操作符
乘法操作符
由一个星号(*)
,可以用于计算两个数值的乘积
。比如:
let result = 34 * 36;
乘法操作符
在处理特殊值的时候也有一些特殊的行为
- 如果操作数都是数值,则执行常规的乘法运算。即两个正值
相乘
是正值,两个负值相乘
也是正值。如果ECMAScript
不能表示乘积,则返回Infinity
或-Infinity
- 如果有任一操作数是
NaN
, 则返回NaN
。 - 如果
Infinity
乘以0
,则返回NaN
。 - 如果是
Infinity
乘以非0的有限数值
,则根据第一个操作数的符号返回Infinity
或者-Infinity
。 - 如果是
Infinity
乘以Infinity
,则返回Infinity
。 - 如果有不是数值的操作数,则先在后台用
Number()
将其转换为数值,然后在应用上述规则。
除法操作符
除法操作符
由一个斜杠(/)
,可以用于计算第一个操作数除以第一个操作数的商。比如:
let result = 66 * 11;
除法操作符
在处理特殊值的时候也有一些特殊的行为
- 如果操作数都是数值,则执行常规的除法运算。即两个正值
相除
是正值,两个负值相除
也是正值。如果ECMAScript
不能表示商,则返回Infinity
或-Infinity
- 如果有任一操作数是
NaN
, 则返回NaN
。 - 如果是
Infinity
除以Infinity
,则返回NaN
。 - 如果
0
乘以0
,则返回NaN
。 - 如果
非 0 的有限的值
除以0
,则根据第二个操作数的符号返回Infinity
或者-Infinity
。 - 如果是
Infinity
除以任何值,则根据第二个操作数的符号Infinity
或者-Infinity
。 - 如果有不是数值的操作数,则先在后台用
Number()
将其转换为数值,然后在应用上述规则。
取模操作符
取模操作符
由一个百分号(%)
表示。比如:
let result = 26 % 5; // 等于1;
取模操作符
在处理特殊值的时候也有一些特殊的行为
- 如果操作数都是数值,则执行常规的除法运算,返回余数。
- 如果
被除数是无限值
,除数是有限值
则返回NaN
。 - 如果
被除数是有限值
,除数0
, 则返回NaN
。 - 如果是
Infinity
除以Infinity
,则返回NaN
。 - 如果被除数是有限值,除数是无限值,则返回被除数。
- 如果
被除数是 0
,除数不是0
,则返回 0
。 - 如果有不是数值的操作数,则先在后台用
Number()
将其转换为数值,然后在应用上述规则。