javascript - 在 JavaScript 中,为什么零除以零返回 NaN,而任何其他除以零返回 Infinity?

标签 javascript math floating-point nan infinity

在我看来代码

console.log(1 / 0)

应该返回 NaN,但它返回 Infinity。但是这段代码:

console.log(0 / 0)

确实返回NaN。有人可以帮助我理解此功能的原因吗?它不仅看起来不一致,而且似乎也是错误的,在 x/0 where x !== 0

的情况下

最佳答案

因为这就是 float 的定义方式(比 Javascript 更普遍)。参见示例:

粗略地说,您可以将 1/0 视为 1/x 的极限,因为 x 趋于零(从右开始)。而 0/0 根本没有合理的解释,因此是 NaN。

关于javascript - 在 JavaScript 中,为什么零除以零返回 NaN,而任何其他除以零返回 Infinity?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18838301/

相关文章:

jquery - jquery 中裁剪\缩放工具的几何计算

math - float 学有问题吗?

c - 修改第 N 位

javascript - HTML 文件中的连续 Javascript 脚本标记

javascript - 如果按下按钮,jQuery onunload 会执行操作

Grails 中的 Javascript 表格单击功能

c# - C# 中的 float 是否有一个好的基数排序实现

floating-point - 我们可以为自定义标志使用任何浮点值吗?

c - 是否可以仅使用 C 中的 int 类型将 3.005 添加到 4.70?

javascript - 如何验证 url 地址并确保它至少包含 javascript 中 url 的一部分?