Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
about ES and TC39
Search
surumebeer
May 08, 2019
Technology
0
260
about ES and TC39
について調べました。
surumebeer
May 08, 2019
Tweet
Share
More Decks by surumebeer
See All by surumebeer
作ろう、Custom Hooks
surumebeer
1
320
Other Decks in Technology
See All in Technology
KubeCon + CloudNativeCon Japan 2025 に行ってきた! & containerd の新機能紹介
honahuku
0
120
高速なプロダクト開発を実現、創業期から掲げるエンタープライズアーキテクチャ
kawauso
1
370
開発生産性を組織全体の「生産性」へ! 部門間連携の壁を越える実践的ステップ
sudo5in5k
0
530
さくらのIaaS基盤のモニタリングとOpenTelemetry/OSC Hokkaido 2025
fujiwara3
2
260
Amazon Bedrockで実現する 新たな学習体験
kzkmaeda
2
680
Delegating the chores of authenticating users to Keycloak
ahus1
0
130
より良いプロダクトの開発を目指して - 情報を中心としたプロダクト開発 #phpcon #phpcon2025
bengo4com
1
3.2k
登壇ネタの見つけ方 / How to find talk topics
pinkumohikan
6
600
生成AI活用の組織格差を解消する 〜ビジネス職のCursor導入が開発効率に与えた好循環〜 / Closing the Organizational Gap in AI Adoption
upamune
5
4.6k
AI導入の理想と現実~コストと浸透〜
oprstchn
0
150
Model Mondays S2E03: SLMs & Reasoning
nitya
0
240
AWS Summit Japan 2025 Community Stage - App workflow automation by AWS Step Functions
matsuihidetoshi
1
310
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
GraphQLとの向き合い方2022年版
quramy
49
14k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
4 Signs Your Business is Dying
shpigford
184
22k
Faster Mobile Websites
deanohume
307
31k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Typedesign – Prime Four
hannesfritz
42
2.7k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
Done Done
chrislema
184
16k
Transcript
ECMAScriptとTC39について Shuji Nishino @surumebeer 『Vue.js/PWA/JavaScript…新&定番なんでもあり』 表参道Web勉強会 3 2019/4/8
自己紹介 Shuji Nishino @surumebeer 株式会社PR TIMES フロントエンドエンジニア ・するめ ・ビール ・鯱がマスコットのサッカークラブ
が好きです。 よろしくおねがいします。
ささやかな疑問
ES2015だのES7だの ナンバリングがあれこれあるけど そもそもこれはどういうことなんだろ
あれこれを調べてみた
そもそもES(ECMAScript)とは?
ECMAScript(Ecma-262) • Ecma Internationalが策定しているJavaScriptの仕様 • 紆余曲折あってブラウザ(クライアントサイド)で使える JavaScriptの仕様を標準化する必要性が高まり、Ecma Internationalが策定&標準化している (詳しくはWebで)
ECMAScript(Ecma-262) • ES2015(ES6)から毎年策定する予定のため、策定時の バージョニングから西暦でナンバリングしようとなっているみ たいです。 Ecma Internationalの中にTC39という集まりがあるらしい • どうやって標準化してるの? •
ES2015には大きな標準化がありましたね
TC39…
TC39とは • ECMAScriptの仕様について議論する委員会(github) • github/TC39のPeople 各ブラウザ、W3C、WHATWG、Node.jsのDevelopper等 • 段階的なプロセスを経て機能の標準化をしている • ブラウザに導入して実際にテストしていたりする。
→ 例:Chrome 67にPromise.allSetteledが導入される
仕様策定のプロセス • Stage0 - Strawperson • Stage1 - Proposal •
Stage2 - Draft • Stage3 - Candidate • Stage4 - Finished • (Inactive) https://tc39.github.io/process-document/
MTGの内容 アジェンダだったり議事録だったりがGitHubに置いてある 主に… • ProposalのStage、issues、PRについての議論 • Proposalにある機能の仕様の確認 等 毎年5-6月にStage4の機能の標準化を発表している
ちなみに… 今年発表されるであろうECMAScript2019のバージョンは10ら しいです。
実際にStage4にある機能を見てみる Finished Proposals
ES2019で追加される予定のもの ES2016 - 2 Proposals ES2017 - 6 Proposals ES2018
- 8 Proposals ES2019 - 8 Proposals とES2016以降で毎年追加予定の 機能は増加傾向にある。
Array.prototype.{flat,flatMap}を見てみる Array.prototype.flat 配列を連結して特定の深さの新しい配列を作成する Array.prototype.flatMap 配列の各要素をマッピングする関数を使用してマッピングし、flat化した結果を新しい配 列にする。 Array.prototype.flatMap & Array.prototype.flat(Stage 3
Draft / January 4, 2019)
Array.prototype.{flat,flatMap}を見てみる flat flatMap
Proposalの動き GitHub/TC39にレポジトリが立っているので、commitのhistory見てみる
Proposalの動き Stage 0 には2017年6月に上がっている。
議事録見てみる 2017-07-27 Meeting Notes Proposalのためのslideとかもある みたいな仕様についての議論がされている
そしてStage4(Finished)に
で、どこで使えるの or どこで使えないの? ECMAScript 5/6/7 compatibility tables 見るとすごいわかりやすくていいです
参考 ・GitHub/TC39 ・ECMAScript Discussion Archives ・ECMAScript® 2020 Language Specification ・ECMAScript
2019の議事録を全部読む #TC39MTG 読書会をしました ・ECMAScriptの仕様策定に関するカンニングペーパー (Web Scratch) ・ECMAScript 5/6/7 compatibility tables
おしまい
ご清聴ありがとうございました
乾杯