相关疑难解决方法(0)

+0和-0是否相同?

阅读ECMAScript 5.1规范,+0-0进行区分.

为什么然后+0 === -0评估true

javascript

163
推荐指数
5
解决办法
4万
查看次数

区分+0和-0

事实证明,+0 === -0计算结果为true,尽管+0-0不同的实体.那么,你如何区分+0-0

有一个黑客:

if (1 / myZero > 0) {
   // myZero is +0
} else {
   // myZero is -0
}
Run Code Online (Sandbox Code Playgroud)

我可以做得更好吗?

javascript

36
推荐指数
3
解决办法
2957
查看次数

浮点数是负零吗?(-0f)

IEEE浮点数有一个位用于指示符号,这意味着您可以在技术上具有零(+0和-0)的不同二进制表示.我是否可以在C中进行算术运算,从而产生负零浮点值?

这个问题的灵感来自于另一个问题是否可以安全地比较0.0f使用==,我还想知道是否还有其他方法来表示零,这会导致float1 == 0.0f看似完全相等的值.

[编辑]请不要评价比较花车的平等安全性!我并没有试图添加那些重复的问题.

language-agnostic floating-point negative-zero

30
推荐指数
4
解决办法
1万
查看次数

Javascript返回-0

我在控制台上尝试了一个简单的算法,我试图将0与-1相乘.有趣的是,我得到了-0作为答案,而不是0.

截图:

在此输入图像描述

谁能解释这些结果?

javascript

5
推荐指数
2
解决办法
118
查看次数

-0的结果从+0中减去

我在2012年发布的一本JavaScript书中发现了一条声明"如果-0从+0中减去,则结果为-0".

但是,当我+0 - (-0)在浏览器中计算时,它返回0而不是-0.我想知道从那以后ECMAScript是否有变化,或者它只是书中的错误/错字.

如果这本书提到的是真的,我想听听这部分的解释和阐述.

书:适用于Web开发人员的专业JavaScript,第3版.作者:Nicholas C. Zakas(第3章 - 第63页)

javascript

1
推荐指数
1
解决办法
86
查看次数