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
社内LT2020/01/23
Search
Kento Matsumoto
January 23, 2020
Programming
0
45
社内LT2020/01/23
Kento Matsumoto
January 23, 2020
Tweet
Share
More Decks by Kento Matsumoto
See All by Kento Matsumoto
ストーリーポイント.pdf
stepanve
0
88
社内LT2019/11/21
stepanve
0
64
社内LT2019/11/7
stepanve
0
80
社内LT2019/10/24
stepanve
0
66
Other Decks in Programming
See All in Programming
Range on Rails ―「多重範囲型」という新たな選択肢が、複雑ロジックを劇的にシンプルにしたワケ
rizap_tech
0
6.6k
実践Claude Code:20の失敗から学ぶAIペアプログラミング
takedatakashi
1
270
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
190
バッチ処理を「状態の記録」から「事実の記録」へ
panda728
PRO
0
160
Flutterで分数(Fraction)を表示する方法
koukimiura
0
130
Devvox Belgium - Agentic AI Patterns
kdubois
1
120
kiroとCodexで最高のSpec駆動開発を!!数時間で web3ネイティブなミニゲームを作ってみたよ!
mashharuki
0
530
Foundation Modelsを実装日本語学習アプリを作ってみた!
hypebeans
0
110
登壇は dynamic! な営みである / speech is dynamic
da1chi
0
340
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
360
overlayPreferenceValue で実現する ピュア SwiftUI な AdMob ネイティブ広告
uhucream
0
180
XP, Testing and ninja testing ZOZ5
m_seki
3
670
Featured
See All Featured
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
8
910
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
870
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Writing Fast Ruby
sferik
629
62k
Designing for humans not robots
tammielis
254
26k
Become a Pro
speakerdeck
PRO
29
5.5k
Scaling GitHub
holman
463
140k
How to Think Like a Performance Engineer
csswizardry
27
2k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Transcript
ES2020 社内勉強会
String.prototype.matchAll const regexp = /t(e)(st(\d?))/g const str = 'test1test2' [...str.matchAll(regexp)]
// ['test1', 'e', 'st1', '1', index: 0, input: 'test1test2', length: 4] // ['test2', 'e', 'st2', '2', index: 5, input: 'test1test2', length: 4]
import() import { calcAge } from '..utils' calcAge('1989/12/05') // 30
const utils = await import('..utils') utils.calcAge('1989/12/05') // 30
BigInt const int = Number.MAX_VALUE // 1.7976931348623157e+308 const bigInt =
Number.MAX_VALUE // 1797693134862315708145274237317043567980705675258449965989174768031572 607800285387605895586327668781715404589535143824642343213268894641827684 675467035375169860499105765512820762454900903893289440758685084551339423 045832369032229481658085593321233482747978262041447231687381771809192998 81250404026184124858368 n
Promise.allSettled const int = promises = [ fetch('index.html'), fetch('test.html') ]
const result = await Promise.allSettled(promises) const successfulPromises = result.filter(p.status=== 'fulfilled')
globalThis // worker.js globalThis === self // node.js globalThis ===
global // browser.js globalThis === window
for-in mechanics - Partially specifying object enumeration order in JavaScript
(順序が部分的に指定されるようになる)
Optional Chaining const obj = {} if (!obj.address.postCode) console.log('OK') //
Uncaught TypeError: Cannot read property 'postCode' of undefined if (!(obj && obj.address && obj.address.postCode)) console.log('OK') // OK if (!obj?.address?.postCode) console.log('OK') // OK
Nullish coalescing Operator Null || 'second' // 'second' Null ??
'second' // 'second' undefined || 'second' // 'second' undefined ?? 'second' // 'second' 0 || 'second' // 'second' 0 ?? 'second' // 0 '' || 'second' // 'second' '' ?? 'second' // ''
References - https://github.com/tc39/proposals/blob/master/finished-proposals.md - https://github.com/tc39/proposal-string-matchall - https://github.com/tc39/proposal-dynamic-import - https://github.com/tc39/proposal-bigint -
https://github.com/tc39/proposal-promise-allSettled - https://github.com/tc39/proposal-global - https://github.com/tc39/proposal-for-in-order - https://github.com/tc39/proposal-optional-chaining - https://github.com/tc39/proposal-nullish-coalescing