ひよこ3:07のTechブログ

JavaScriptの+0と-0

+0-0

JavaScriptでは+0-0が区別される。

普通に比較する場合には違いはないが、割り算をした時に結果が変わってくる。

console.log(+0 === -0); // true

console.log(1 / +0 === 1 / -0); // false

1 / +0Infinityに、1 / -0-Infinityになる。0+0と同じ。

ECMAScript6

2014年4月7日現在、ECMAScript6で提案されているObject.is()でも+0-0は区別される予定。

Object.is(+0, -0); // false

参考