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
94
ES2020 で来る7つの新機能
53
May 08, 2020
Tweet
Share
More Decks by 53
See All by 53
CSSで非表示にする方法
gotadano
0
65
Vue.js_x_Animation.pdf
gotadano
1
140
Vue.jsとNuxt.jsの学び方
gotadano
0
240
初めてnpmパッケージを公開した話.pdf
gotadano
0
30
JavaScriptで実装したVueJS プロジェクトをTypeScriptへ移行する話
gotadano
1
360
Other Decks in Technology
See All in Technology
IBC 2024 動画技術関連レポート / IBC 2024 Report
cyberagentdevelopers
PRO
1
120
開発生産性を上げながらビジネスも30倍成長させてきたチームの姿
kamina_zzz
2
1.7k
Storybook との上手な向き合い方を考える
re_taro
5
990
Flutterによる 効率的なAndroid・iOS・Webアプリケーション開発の事例
recruitengineers
PRO
0
120
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
0
110
Shopifyアプリ開発における Shopifyの機能活用
sonatard
4
260
20241120_JAWS_東京_ランチタイムLT#17_AWS認定全冠の先へ
tsumita
2
310
100 名超が参加した日経グループ横断の競技型 AWS 学習イベント「Nikkei Group AWS GameDay」の紹介/mediajaws202411
nikkei_engineer_recruiting
1
170
個人でもIAM Identity Centerを使おう!(アクセス管理編)
ryder472
4
240
Next.jsとNuxtが混在? iframeでなんとかする!
ypresto
1
130
Mastering Quickfix
daisuzu
1
150
DynamoDB でスロットリングが発生したとき/when_throttling_occurs_in_dynamodb_short
emiki
0
270
Featured
See All Featured
Being A Developer After 40
akosma
87
590k
How to Ace a Technical Interview
jacobian
276
23k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
What's new in Ruby 2.0
geeforr
343
31k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
RailsConf 2023
tenderlove
29
900
Code Review Best Practice
trishagee
64
17k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
Designing the Hi-DPI Web
ddemaree
280
34k
Designing for humans not robots
tammielis
250
25k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.8k
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.