算术运算溢出不会自动抛出异常,因此,需要自己来处理。
try {
if (
!(
(a + b < 1.79769313486231e308 && a + b > 4.94065645841247e-324) ||
(a + b < -1.79769313486231e308 && a + b > -4.94065645841247e-324)
)
) {
// 检测是否在数据范围内
throw new Error(' 超出了 Number 最大值,导致溢出 ');
} else {
c = a + b;
}
} catch (err) {
console.log(err.message);
}