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
70
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
13
TDD, Test Driven Development
superfishz
0
18
introduce asymptotic notation
superfishz
0
14
Other Decks in Programming
See All in Programming
CSC305 Lecture 10
javiergs
PRO
0
220
Go言語の特性を活かした公式MCP SDKの設計
hond0413
1
440
AI 駆動開発におけるコミュニティと AWS CDK の価値
konokenj
4
140
はじめてのDSPy - 言語モデルを『プロンプト』ではなく『プログラミング』するための仕組み
masahiro_nishimi
3
12k
CSC305 Lecture 06
javiergs
PRO
0
270
モテるデスク環境
mozumasu
3
1.1k
スキーマ駆動で、Zod OpenAPI Honoによる、API開発するために、Hono Takibiというライブラリを作っている
nakita628
0
300
NixOS + Kubernetesで構築する自宅サーバーのすべて
ichi_h3
0
1.1k
あなたとKaigi on Rails / Kaigi on Rails + You
shimoju
0
180
CSC305 Lecture 09
javiergs
PRO
0
300
登壇は dynamic! な営みである / speech is dynamic
da1chi
0
350
3年ぶりにコードを書いた元CTOが Claude Codeと30分でMVPを作った話
maikokojima
0
620
Featured
See All Featured
For a Future-Friendly Web
brad_frost
180
10k
Context Engineering - Making Every Token Count
addyosmani
7
290
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Rails Girls Zürich Keynote
gr2m
95
14k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Being A Developer After 40
akosma
91
590k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
630
A Tale of Four Properties
chriscoyier
161
23k
Optimizing for Happiness
mojombo
379
70k
Music & Morning Musume
bryan
46
6.9k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
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.