+0等于-0吗

298 阅读1分钟

在 JavaScript 中,+0 和 -0 在数值上是相等的。也就是说,+0 === -0 的结果为 true。

但是,尽管在数值上相等,+0 和 -0 在某些情况下可能会有一些微小的差别。

  1. 表示正零和负零的字符串表示不同:
console.log(+"0");// 0 
console.log(-"0"); // -0
  1. 在进行除法运算时,+0 和 -0 可能会产生不同的结果:
console.log(1 / +0);   // Infinity
console.log(1 / -0);   // -Infinity

尽管存在这些微小的差别,但在大多数情况下,+0 和 -0 被视为相等的。在比较相等性时,可以使用严格相等运算符(===)来检查 +0 和 -0 是否相等。 (es6新增Object.is()方法,返回了false)