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
HTMLの品質ってなんだっけ? “HTMLクライテリア”の設計と実践
unachang113
4
2.9k
Navigating Dependency Injection with Metro
zacsweers
3
260
Kiroで始めるAI-DLC
kaonash
2
590
2025 年のコーディングエージェントの現在地とエンジニアの仕事の変化について
azukiazusa1
24
12k
そのAPI、誰のため? Androidライブラリ設計における利用者目線の実践テクニック
mkeeda
2
300
Rancher と Terraform
fufuhu
2
400
パッケージ設計の黒魔術/Kyoto.go#63
lufia
3
440
AIコーディングAgentとの向き合い方
eycjur
0
270
Deep Dive into Kotlin Flow
jmatsu
1
340
旅行プランAIエージェント開発の裏側
ippo012
2
910
知っているようで知らない"rails new"の世界 / The World of "rails new" You Think You Know but Don't
luccafort
PRO
1
160
はじめてのMaterial3 Expressive
ym223
2
400
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
Speed Design
sergeychernyshev
32
1.1k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Designing Experiences People Love
moore
142
24k
The Invisible Side of Design
smashingmag
301
51k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
810
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
The Pragmatic Product Professional
lauravandoore
36
6.9k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Building Applications with DynamoDB
mza
96
6.6k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
51
5.6k
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