Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 15 additions & 1 deletion docs/reference/values-types-variables/number/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,21 @@ const count: number = 123;

## 数値の範囲

JavaScriptのnumber型は、IEEE 754の倍精度浮動小数です。64ビットのうち、52ビットが数値の格納に、11ビットが小数の位置に、1ビットが正負符号に使われます。正確に扱える数値は`-(2^53 − 1)`から`2^53 − 1`の間です。整数について言うと、他言語の64ビット整数型の範囲より狭いので注意しましょう。
JavaScriptのnumber型は、IEEE 754の倍精度浮動小数です。64ビットのうち、52ビットが数値の格納に、11ビットが小数の位置に、1ビットが正負符号に使われます。

JavaScriptの`number`型で、すべての整数を正確に区別して扱える範囲は、`-(2^53 − 1)`以上`2^53 − 1`以下です。この範囲を安全な整数の範囲と呼びます。

この範囲を超えると、数学上は異なる整数が同じ`number`値として扱われることがあります。

```ts twoslash
const a = 2 ** 53;
const b = a + 1;

console.log(a === b);
// @log: true
```

整数について言うと、他言語の64ビット整数型の範囲より狭いので注意しましょう。

## 特殊な数値

Expand Down
Loading