首页 > web前端 > js教程 > JavaScript 中 0 和 -0 被视为相等吗?

JavaScript 中 0 和 -0 被视为相等吗?

Susan Sarandon
发布: 2024-11-20 14:39:22
原创
986 人浏览过

Are  0 and -0 Considered Equal in JavaScript?

JavaScript 中的 0 和 -0 相同吗?

尽管 ECMAScript 5.1 规范中做出了区分,但 0 和 -0 的计算结果是true 在 JavaScript 中使用严格相等。

这是为什么?

JavaScript 采用 IEEE 754 标准进行数字表示。根据该标准,有符号零可以以两种形式存在:0(正零)和-0(负零)。然而,除以 0 或 -0 分别会得到 ∞ 和 -∞,而不是未定义。

从技术上讲,0 和 -0 之间的区别至关重要。然而,JavaScript 在其严格相等算法中提供了一个例外。第 11.9.6 节明确指出,在严格相等比较中,0 和 -0 被视为相等。

此异常与将 0 和 -0 视为相等的逻辑概念一致。此外,它无需在代码中考虑这种区别,从而简化了开发。

注意:

ES2015 引入了 Object.is 作为新的比较方法。与松散和严格相等运算符不同,Object.is 明确区分 0 和 -0:

Object.is(-0, +0); // false
登录后复制

以上是JavaScript 中 0 和 -0 被视为相等吗?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板