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

ECMAScript 2024の対応 #1706

Closed
13 of 14 tasks
azu opened this issue Dec 10, 2023 · 9 comments · Fixed by #1761
Closed
13 of 14 tasks

ECMAScript 2024の対応 #1706

azu opened this issue Dec 10, 2023 · 9 comments · Fixed by #1761

Comments

@azu
Copy link
Collaborator

azu commented Dec 10, 2023

ES2024対応のメタIssueです

やりかた

  • JavaScript Primer - Open Collectiveでのアナウンス
  • 検討リストから対応するべきかを決める
  • 対応するものは別途Issue化する
  • 対応する
  • すべて対応したら book.js を更新
  • リリースノートを公開する

スケジュール

  • 1月: TC39で最終的にFeature Freezeされる
  • 1-6月: 検討、実装
  • 6月: ES2023の正式リリースと合わせて公開

検討リスト

検討対象のリスト

対応リスト

実際に対応するリスト

過去

@azu
Copy link
Collaborator Author

azu commented Dec 29, 2023

@azu
Copy link
Collaborator Author

azu commented Feb 10, 2024

Well-Formed Unicode Strings

孤立したサロゲートペアを発見するメソッド。

encodeURIComponent("\uD800")

のような孤立したサロゲートペアを受け取ると例外を投げる文字列の判定に利用できる。

サロゲートペア では、特に孤立したサロゲートペアについては触れていない。
そのため、追加するかはちょっと微妙。コラム的に書くのはありかもしれないぐらいな印象

結論

Issueは作るが、必要なら対応するぐらいな優先度

@azu
Copy link
Collaborator Author

azu commented Feb 10, 2024

tc39/proposal-atomics-wait-async: "asynchronous atomic wait" for ECMAScript

Atomics.waitAsync
Atomics自体が登場していないため、特に触れない

結論

対応しない

@azu
Copy link
Collaborator Author

azu commented Feb 10, 2024

tc39/proposal-regexp-v-flag: UTS18 set notation in regular expressions

特にフラグを網羅してるわけではないので、触れなくても問題なさそう。
フラグの一覧だけを出すというのはありかもしれないが、現状はそのパターンがないので触れない

結論

対応しない

@azu
Copy link
Collaborator Author

azu commented Feb 10, 2024

ArrayBuffer

ArrayBuffer自体を扱っていないので対応しない

結論

対応しない

@azu
Copy link
Collaborator Author

azu commented Feb 10, 2024

tc39/proposal-array-grouping: A proposal to make grouping of array items easier

Web互換性のためにObject.groupByになった。
Map.groupBy(array, fn)もある。

グループ化は頻出ではあるので含めるのは妥当そうだけど、配置が難しい

  • Array.prototype.groupObject.groupBy(array, cb)
  • Array.prototype.groupToMapMap.groupBy(array, cb)

という経緯。
どちらも配列を引数として受け取るようになってるので、配列関係。

データの変換的に見れば

  • Object.groupBy は 配列をオブジェクトにするメソッド
  • Map.groupBy は配列をMapにするメソッド

として捉えられる。

Object.groupByは、 配列 to objectなので、Array.prototype.reduce の近くにあるのが良さそう。
Map.groupByは、Map/Setにあるのが良さそう。
Map.groupByはちょっと必要かは怪しい。

結論

  • Object.groupBy: 配列の章に追加する
  • Map.groupBy は Map/Setの章に追加する?

@azu
Copy link
Collaborator Author

azu commented Feb 10, 2024

tc39/proposal-promise-with-resolvers

Promise.withResolvers によるイベントの Promise 化 | blog.jxck.io
Defferredパターンが必要なのは、イベントの付与とPromiseを組み合わせる時。
書籍では特に出てこない。

Ajax通信 · JavaScript Primer #jsprimerはclickが最初に決まっているので、クリックしたタイミングで付与するわけじゃない。XHRならありえたけど。

少し発展的なパターンなので、この本だと不要そう。

結論

対応しない。

@azu azu added this to the v6(ES2024) milestone Feb 10, 2024
@azu azu added the Type: Meta label Feb 10, 2024
@azu
Copy link
Collaborator Author

azu commented Feb 17, 2024

https://github.com/tc39/ecma262/releases/tag/es2024-candidate-2024-02
ES2024 RCがリリースされた

@azu azu linked a pull request Aug 25, 2024 that will close this issue
@azu azu closed this as completed in #1761 Aug 25, 2024
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