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
250
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
AndroidXR 開発ツールごとの できることできないこと
donabe3
0
120
30分でわかる『アジャイルデータモデリング』
hanon52_
9
2.5k
PL900試験から学ぶ Power Platform 基礎知識講座
kumikeyy
0
120
関東Kaggler会LT: 人狼コンペとLLM量子化について
nejumi
3
540
【Developers Summit 2025】プロダクトエンジニアから学ぶ、 ユーザーにより高い価値を届ける技術
niwatakeru
2
1.2k
RECRUIT TECH CONFERENCE 2025 プレイベント【高橋】
recruitengineers
PRO
0
120
Larkご案内資料
customercloud
PRO
0
650
現場で役立つAPIデザイン
nagix
32
11k
転生CISOサバイバル・ガイド / CISO Career Transition Survival Guide
kanny
3
920
Oracle Cloud Infrastructure:2025年2月度サービス・アップデート
oracle4engineer
PRO
1
140
Nekko Cloud、 これまでとこれから ~学生サークルが作る、 小さなクラウド
logica0419
2
880
2024.02.19 W&B AIエージェントLT会 / AIエージェントが業務を代行するための計画と実行 / Algomatic 宮脇
smiyawaki0820
10
1.6k
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Statistics for Hackers
jakevdp
797
220k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Documentation Writing (for coders)
carmenintech
67
4.6k
How GitHub (no longer) Works
holman
313
140k
A Philosophy of Restraint
colly
203
16k
Automating Front-end Workflow
addyosmani
1367
200k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
31
2.1k
Practical Orchestrator
shlominoach
186
10k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
The World Runs on Bad Software
bkeepers
PRO
67
11k
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
おしまい
ご清聴ありがとうございました
乾杯