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
What's New in JavaScript and Why (korean, 2019)
Search
Jihoon KIm
June 21, 2019
Programming
0
69
What's New in JavaScript and Why (korean, 2019)
What's New in JavaScript and Why (korean, 2019)
I/O Extended 2019 Pangyo
Jihoon KIm
June 21, 2019
Tweet
Share
More Decks by Jihoon KIm
See All by Jihoon KIm
DevFest 2019 DevOps and Test (Korean)
superfishz
0
11
TDD, Test Driven Development
superfishz
0
17
introduce asymptotic notation
superfishz
0
12
Other Decks in Programming
See All in Programming
RDoc meets YARD
okuramasafumi
4
170
Cache Me If You Can
ryunen344
2
3k
testingを眺める
matumoto
1
140
より安全で効率的な Go コードへ: Protocol Buffers Opaque API の導入
shwatanap
2
360
今だからこそ入門する Server-Sent Events (SSE)
nearme_tech
PRO
3
240
1から理解するWeb Push
dora1998
7
1.9k
概念モデル→論理モデルで気をつけていること
sunnyone
3
290
ファインディ株式会社におけるMCP活用とサービス開発
starfish719
0
1.9k
250830 IaCの選定~AWS SAMのLambdaをECSに乗り換えたときの備忘録~
east_takumi
0
400
Reading Rails 1.0 Source Code
okuramasafumi
0
250
JSONataを使ってみよう Step Functionsが楽しくなる実践テクニック #devio2025
dafujii
1
590
Performance for Conversion! 分散トレーシングでボトルネックを 特定せよ
inetand
0
2.4k
Featured
See All Featured
Music & Morning Musume
bryan
46
6.8k
Being A Developer After 40
akosma
90
590k
Gamification - CAS2011
davidbonilla
81
5.4k
How to train your dragon (web standard)
notwaldorf
96
6.2k
A designer walks into a library…
pauljervisheath
207
24k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
How STYLIGHT went responsive
nonsquared
100
5.8k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
GraphQLの誤解/rethinking-graphql
sonatard
72
11k
How GitHub (no longer) Works
holman
315
140k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
Making the Leap to Tech Lead
cromwellryan
135
9.5k
Transcript
What's New In Javascript and Why ӣള kakao corp
• What’s new in JavaScript(Google I/O ’19) ীࢲ աৡ ঠӝ
+ ࢎ • ਊغѢա ֤ ੋ JavaScript ӝמٜী ೧ ঠӝ Overview
• class fields • String#matchAll • numeric separators • BigInt
• Array#{flat, flatMap} • Object.fromEntries Index • globalThis • Array#sort • Intl • Promise • WeakRefs
None
2018...
class fields
class fields
class fields
class fields
class fields
class fields
class fields
class fields
class fields
class fields
class fields V8 7.4+ Chrome 74+ Node.js 12+ https://v8.dev/features/class-fields
String#matchAll
String#matchAll
String#matchAll
String#matchAll
String#matchAll V8 7.3+ Chrome 73+ Firefox 67+ Node.js 12+ https://v8.dev/features/string-matchall
numeric separators
numeric separators
numeric separators
numeric separators V8 7.5+ Chrome 75+ https://v8.dev/features/string-matchall https://github.com/tc39/proposal-numeric-separator
BigInt
BigInt
BigInt
BigInt
BigInt
BigInt * ࣗࣻ ࠛо! * Number ৬ ഒਊ೧ࢲ ࢎਊ ࠛо!
(э ܐഋਵ۽ ఋੑ நझ ೧ঠ ೣ) * Math ё ݫࢲ٘ܳ ೣԋ ࢎਊ ࠛо * https://developer.mozilla.org/ko/docs/Web/JavaScript/ Reference/Global_Objects/BigInt
BigInt
BigInt Chrome 67+ Firefox 68+ Node.js 12+ (10.8+) https://v8.dev/features/bigint https://node.green/#ESNEXT-candidate--stage-3--BigInt
BigInt Chrome 67+ Firefox 68+ Node.js 12+ (10.8+) https://v8.dev/features/bigint https://node.green/#ESNEXT-candidate--stage-3--BigInt
pure-JavaScript implementation of the official ECMAScript BigInt proposal - https://github.com/GoogleChromeLabs/jsbi
Array#{flat, flatMap}
Array#{flat, flatMap}
Array#{flat, flatMap}
Array#{flat, flatMap}
Array#{flat, flatMap}
Array#{flat, flatMap}
Array#{flat, flatMap}
Array#{flat, flatMap}
Array#{flat, flatMap}
Array#{flat, flatMap} Chrome 69+ Firefox 62+ Safari 12+ Node.js 11+
https://v8.dev/features/array-flat-flatmap
Object.fromEntries
Object.fromEntries
Object.fromEntries
Object.fromEntries
Object.fromEntries
Object.fromEntries
Object.fromEntries
Object.fromEntries
Object.fromEntries Chrome 73+ Firefox 63+ Safari 12.1+ Node.js 12+ (link)
mdn - Object/fromEntries
globalThis
globalThis
globalThis
globalThis Chrome 71+ Firefox 65+ Safari 12.1+ Node.js 12+ (link)
mdn - globalThis
Array#sort
Array#sort
Array#sort
Array#sort
Array#sort V8 7.0+ Chrome 70+ & ‘All major JavaScript engines’
https://v8.dev/blog/array-sort
Intl - internationalization
Intl - internationalization
Intl - internationalization
Intl - internationalization
Intl - internationalization
check specific versions https://v8.dev/blog/intl https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl https://nodejs.org/api/intl.html Intl - internationalization
Promise
Promise
Promise.all
Promise.race
Promise
Promise.allSettled Chrome 76+ https://github.com/tc39/proposal-promise-allsettled
Promise.any proposal https://github.com/tc39/proposal-promise-any
https://v8.dev/features/promise-combinators Promise
WeakRef - proposal
WeakRef - proposal https://github.com/tc39/proposal-weakrefs https://tc39.es/proposal-weakrefs/#sec-weak-ref-objects https://www.youtube.com/watch?v=c0oy0vQKEZE&t=1950s “ A WeakRef is
an object that is used to refer to a target object without preserving it from garbage collection. WeakRefs can dereference to allow access to the target object, if the target object hasn't been reclaimed by garbage collection. ”
WeakRef - proposal Usage * cache(performExpensiveOperation) * WebAssembly * prevent
memory leaks https://github.com/tc39/proposal-weakrefs https://tc39.es/proposal-weakrefs/#sec-weak-ref-objects https://www.youtube.com/watch?v=c0oy0vQKEZE&t=1950s
TMI
* Node.js check v8 version * node -e ‘console.log(process.versions.v8);' *
Node.js Internationalization Support * https://nodejs.org/api/intl.html * (default) small-icu
Fin.