前言
在像Java和C这样的实际整数类型的语言中,将整数除以0是一个错误,并且执行会以某种方式停止(例如,抛出异常、触发陷阱等)。然而,在JavaScript中,用整数除以0的操作是有效的。
语法
除法操作符由一个斜杠(/)表示,用于计算第一个操作数除以第二个操作数的商。
除法操作符针对特殊值也有一些特殊的行为:
- 如果ECMAScript不能表示商,则返回 Infinity 或 -Infinity
- 如果有任一操作数是 NaN,则返回 NaN
- 如果是 Infinity 除以 Infinity,则返回 NaN
- 如果是 0 除以 0,则返回 NaN
- 如果是非 0的有限值除以 0,则根据第一个操作数的符号返回 Infinity 或 -Infinity
- 如果是 Infinity 除以任何数值,则根据第二个操作数的符号返回 Infinity 或 -Infinity
- 如果有不是数值的操作数,则先在后台用 Number() 函数将其转换为数值,然后再应用上述规则。
let a=0/0; //NaN;
let a=1/0; //Infinity;
let a=-1/0; //-Infinity;
let a=1/-0; //-Infinity;