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
ES2020 で来る7つの新機能
Search
53
May 08, 2020
Technology
1
100
ES2020 で来る7つの新機能
53
May 08, 2020
Tweet
Share
More Decks by 53
See All by 53
CSSで非表示にする方法
gotadano
0
76
Vue.js_x_Animation.pdf
gotadano
1
160
Vue.jsとNuxt.jsの学び方
gotadano
0
270
初めてnpmパッケージを公開した話.pdf
gotadano
0
38
JavaScriptで実装したVueJS プロジェクトをTypeScriptへ移行する話
gotadano
1
370
Other Decks in Technology
See All in Technology
Access-what? why and how, A11Y for All - Nordic.js 2025
gdomiciano
1
110
関係性が駆動するアジャイル──GPTに人格を与えたら、対話を通してふりかえりを習慣化できた話
mhlyc
0
130
GC25 Recap+: Advancing Go Garbage Collection with Green Tea
logica0419
1
410
E2Eテスト設計_自動化のリアル___Playwrightでの実践とMCPの試み__AIによるテスト観点作成_.pdf
findy_eventslides
0
120
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
11
77k
空間を設計する力を考える / 20251004 Naoki Takahashi
shift_evolve
PRO
3
330
AI Agentと MCP Serverで実現する iOSアプリの 自動テスト作成の効率化
spiderplus_cb
0
500
GopherCon Tour 概略
logica0419
2
190
Optuna DashboardにおけるPLaMo2連携機能の紹介 / PFN LLM セミナー
pfn
PRO
1
880
PLaMoの事後学習を支える技術 / PFN LLMセミナー
pfn
PRO
9
3.8k
Modern_Data_Stack最新動向クイズ_買収_AI_激動の2025年_.pdf
sagara
0
200
extension 現場で使えるXcodeショートカット一覧
ktombow
0
210
Featured
See All Featured
Building an army of robots
kneath
306
46k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Producing Creativity
orderedlist
PRO
347
40k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
Why Our Code Smells
bkeepers
PRO
339
57k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
How GitHub (no longer) Works
holman
315
140k
Raft: Consensus for Rubyists
vanstee
139
7.1k
Code Review Best Practice
trishagee
72
19k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.7k
Transcript
ES2020Ͱ͑Δ7ͭͷ৽ػೳ גࣜձࣾGameWith ࣾLT ྩ25݄8 EcmaScript 11ճͷϦϦʔε
߶ ϑϩϯτΤϯυΤϯδχΞ Flash → Webήʔ → Ձ֨ൺֱαΠτˠ Unity →
WebϝσΟΞˠ YouTuberେखࣄॴ ˠGamewith(͍·ίί)
QoL ࢪࡦ
ि4Ͱ12km Run • ݄ؒ 200kmΦʔόʔͰނোϦεΫ • 2લʹΞΩϨε伳அ྾ • ఈےບԌ •
ͭ΅ϩʔϥʔ ¥ 3,880ԁ • ࣄ͠ͳ͕Β ࠷ۙϚεΫʹ׳Ε͖ͯͨ
ES2020 https://github.com/tc39/proposals
globalThis
࣮ߦڥ ͞·͟· • Webϒϥβʔ • αʔόʔαΠυ • εϚϗ • ϩϘοτ
άϩʔόϧ ΦϒδΣΫτ ඞͣଘࡏ͢Δ❗
None
ಠࣗͷΦϒδΣΫτϞσϧ
ෳͷڥͰಈ͘ίʔυ ڥΛఆ͢ΔؔΛ༻ҙ͍͕ͯͨ͠…
Ұ؏ͨ͠ํ๏ͰΞΫηε ͜Ε͔Β globalThis ϓϩύςΟ Ͱඪ४Խ
Promise.allSettled( )
Ҿ ϓϩϛεͷྻ
Promise.allsettled( )
Promise.allsettled( )
݁Ռ͕هड़͞Εͨྻ ݁ՌΛϑΟϧλϦϯά͢Δͷ͕༰қʹͳΔ
Null ߹ମԋࢉࢠ
exp ?? exp null ͔ undefined ͷͱ͖͚ͩӈลΛฦ͢
Null ߹ମԋࢉࢠ
Null ߹ମԋࢉࢠ
Null ߹ମԋࢉࢠ
exp ?? exp σϑΥϧτ Λࢦఆ͢ΔͨΊͷ৽͍͠ํ๏
ΦϓγϣφϧνΣʔϯԋࢉࢠ
ΦϒδΣΫτͷ தؒνΣοΫ ΦϒδΣΫτ null/undefined Λฦ͢ API
ΦϒδΣΫτͷωετ෦ϓϩύςΟ
ΦϒδΣΫτͷωετ෦ϓϩύςΟ
BigInt
Number.MAX_SAFE_INTEGER 2⁵³ ( 9007199254740991 )
BigInt ඌ n ͕͘
Number ͱڞଘ͍͠ ܕ͕ҧ͏ͷͰԋࢉͰ͖ͳ͍
Number ͱڞଘ͍͠ ਫ਼͕୲อ͞Εͯͳ͍
dynamic import( )
ಈతϩʔυ εΫϦϓτಈ࡞࣌ʹΞϓϦέʔγϣϯͷҰ෦Λऔಘ
dynamic import( ) αϙʔτͷྫ • ଟΧࠃαϙʔτͰɺϢʔβʔݴޠʹඞཁͳεΫϦϓτ͚ͩΛϩʔυ • ΞϓϦέʔγϣϯΛࡉΕʹͯ͠ɺ ԆϩʔυʹΑͬͯύϑΥʔϚϯεɾνϡʔχϯάΛߦ͏ •
Ϟδϡʔϧ͕ݟ͔ͭΒͳ͍߹ͷಈ࡞Λ࣮Ͱ͖Δ
ίʔϧόοΫ
async / await
੩తΠϯϙʔτͱͷҧ͍ Ϗϧυ࣌ʹධՁ͞ΕΔ੩తΠϯϙʔτͱൺֱ • ಈతΠϯϙʔτɺΠϯϙʔτͨ͠εΫϦϓτ͔ΒՄೳ • εΫϦϓτͷͲͷείʔϓ͔ΒͰɺಈతΠϯϙʔτՄೳ • ಈతΠϯϙʔτɺ੩తจࣈྻ͚ͩͰͳ͘ ςϯϓϨʔτจࣈྻड͚͚Δ
String.protype.matchAll
ΠςϨʔλʔΛฦ͢ ਖ਼نදݱʹରͯ͠Ϛον͢Δશจࣈྻ
จࣈྻΛݕग़
݁ՌΛྻڍ
݁ՌΛྻԽ
͍͞͝ʹ • ChromeͰશ෦͑·ͨ͠ • BabelϓϥάΠϯ༻ҙ͞Ε͍ͯ·͢ • TC39 ͷٞࣄGithubͰݟΒΕΔͷͰɺ ະདྷͷJSͷ༷͕֞ؒݟΕ·͢
Fin.