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
56
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
社内LT2020/01/23
Kento Matsumoto
January 23, 2020
More Decks by Kento Matsumoto
See All by Kento Matsumoto
ストーリーポイント.pdf
stepanve
0
100
社内LT2019/11/21
stepanve
0
69
社内LT2019/11/7
stepanve
0
89
社内LT2019/10/24
stepanve
0
77
Other Decks in Programming
See All in Programming
AIを上手に使っていこうとしたら越境せざるを得なくなった話 〜実践1年で見えた境界を越えなければならない理由と進め方〜 / Crossing borders with AI
tomoyakitaura
3
1k
高専キャリア LT 発表内容
crysta1221
6
5.5k
go-spidermonkeyでAIエージェントのCode Modeを実装する
syumai
3
1.5k
DynamoDBの基礎を振り返りながらベクトル検索機能を理解する
musan
3
270
初めての模倣学習とVLA
natsutan
0
480
Vibes Containers 〜AIで変わるコンテナ設計と運用〜
tkikuc
1
490
LL言語やWebフレームワークのPostgreSQL対応 〜DBの機能がユーザーに届くまで〜
kentaroutakeda
0
140
LoopHub - ローカルで動く GitHub で、AI と共同開発
jugyo
0
430
ALB ログから Trace を気合で繋げる技術
fohte
7
870
一参加者から『中の人』へ 〜全通PHPerがブースに立って学んだ、カンファレンスを100倍楽しむコツ〜
wp_daisuke
0
120
ハーネス設計入門 〜プロンプト、コンテキストの次〜
kinopeee
54
36k
自分的「カンファレンスの楽しみ方」
syumai
0
190
Featured
See All Featured
How to make the Groovebox
asonas
2
2.4k
[SF Ruby Conf 2025] Rails X
palkan
2
1.3k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
320
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
My Coaching Mixtape
mlcsv
0
310
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
420
The Curious Case for Waylosing
cassininazir
1
500
Music & Morning Musume
bryan
47
7.4k
Designing Experiences People Love
moore
143
24k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
720
Side Projects
sachag
455
43k
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