Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

データ型とリテラル: BigInt(ES2020+) #445

Closed
azu opened this issue May 2, 2018 · 6 comments · Fixed by #1184
Closed

データ型とリテラル: BigInt(ES2020+) #445

azu opened this issue May 2, 2018 · 6 comments · Fixed by #1184
Assignees

Comments

@azu
Copy link
Collaborator

azu commented May 2, 2018

URL : https://github.com/asciidwango/js-primer/blob/master/source/basic/data-type/README.md

ES2018ではないけど、ES2019+ぐらいに新しいプリミティブデータ型としてBigIntが追加される。

typeof 123n;
// → 'bigint'
@azu azu added Status: Blocked Status: Proposal 提案段階の状態 labels May 2, 2018
@azu
Copy link
Collaborator Author

azu commented May 2, 2018

実際にES2019に入るまでは対応しない。

@azu azu changed the title データ型とリテラル: BigInt(ES2019+) データ型とリテラル: BigInt(ES2020+) Mar 16, 2019
@azu
Copy link
Collaborator Author

azu commented Mar 16, 2019

ES2019には入らなかった

@azu
Copy link
Collaborator Author

azu commented Apr 8, 2020

ES2020では入るので https://jsprimer.net/basic/data-type/ は更新が必要

@azu azu mentioned this issue Apr 8, 2020
12 tasks
@azu
Copy link
Collaborator Author

azu commented Jun 20, 2020

浮動小数点数リテラル

に対して、浮動小数点の範囲を入れる

  • それの範囲を超えた値を扱うためにBigIntが導入された
  • BigIntと浮動小数点は演算できない
  • BigIntは浮動小数点にすると精度が落ちる

@azu
Copy link
Collaborator Author

azu commented Jun 20, 2020

浮動小数点の範囲を定義している MAX_SAFE_INTEGER について扱うべきかどうかかな。

@azu
Copy link
Collaborator Author

azu commented Jul 19, 2020

https://tc39.es/ecma262/#sec-toboolean
0n も falsy

@azu azu closed this as completed in #1184 Aug 22, 2020
azu added a commit that referenced this issue Aug 29, 2020
Nullish coalescing演算子(`??`)とOptional chaining(`?.`)に関する変更

## 変更点

- [x] **falsy**の説明を演算子の章に移動
  - falsyの対応としてnullishを演算子の章で解説するため
  - BigIntの `0n` も falsy に追加 #445 
- [x] Optional chaining演算子の(`?.`)の解説を"オブジェクト"の章に追加
- [x] Nullish coalescing演算子(`??`)とOptional chaining(`?.`)の組み合わせを説明
- [x] Nullish coalescing演算子(`??`)の解説を"演算子"の章に追加
- [x] 一部のコードを `||` を `??` に置き換え
  - 例としては問題ないけど、`??` 推奨気味に変更

## 追加しなかったこと

- デフォルト値に対するNullish coalescing演算子(`??`)とOptional chaining(`?.`)の組み合わせのパターン
  - 他にもいろいろな書き方があるため含めないようにした
- 関数呼び出しとOptional chaining演算子(`?.`)
  - `window.fn?.()` みたいなケース
  - ユースケースがイマイチ。別の解決方法でも良いと思える気がする

fix #1178 
fix #1179
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant