$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Node V18 について
Search
ryota kise
August 25, 2022
0
43
Node V18 について
Node V18 でどんな変更があったのかについて共有しました。
ryota kise
August 25, 2022
Tweet
Share
More Decks by ryota kise
See All by ryota kise
構造体初期化の方法について
mmmommm
0
190
Node.jsデザインパターンを読んで
mmmommm
0
9.8k
Featured
See All Featured
A Tale of Four Properties
chriscoyier
162
23k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
How to Ace a Technical Interview
jacobian
281
24k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
Making the Leap to Tech Lead
cromwellryan
135
9.7k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
Thoughts on Productivity
jonyablonski
73
5k
Fireside Chat
paigeccino
41
3.7k
Into the Great Unknown - MozCon
thekraken
40
2.2k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
A designer walks into a library…
pauljervisheath
210
24k
Done Done
chrislema
186
16k
Transcript
Node V18について 社名:CAM 名前:吉瀬遼太
変更点 - fetchがフラグなしで使えるようになった - web stream APIの一連のクラスが追加された - Blob BloadcastChannelがグローバルで使用可能になった
node:buffer からimportする必要がなくなった - 標準のテストが追加された - V8のバージョンが 10.1 になった - server.headersTimeoutがデフォルトで 0->60000ms(1分)になった クライアントからのヘッダー受信のタイムアウト - server.requestTimeoutがデフォルトで 0->300000ms(5分)になった クライアントからのリクエスト受信のタイムアウト
fetch 元々ブラウザ側に存在していた fetch API をサーバー側にも追加した形 XHRで行うAPIへのリクエストの代替だけではなく imgタグ用の画像のバイナリデータ取 得を行ったりするため、用途として完全に同じではないがインターフェースとしては同じ です
Web Stream API 元々Node.jsにあったStream API はブラウザとの互換性がなかったため、従来の Stream API を残しつつブラウザに互換性のある Stream
API を追加 以前は ‘node:stream/web’ から import しないといけなかったがグローバルに追加
標準のテスト node:test モジュールが追加、最低限の assert などが生えています まだ単一ファイルの実行しかできないですが機能が揃って来れば最低限のテストなら Jestとかをインストールせずにできるので便利そうです
V8のバージョンアップ 配列の新たなメソッド findLast() findLastIndex() が追加 find() や findIndex() は前からですが後ろから数えられるように
Intl.Locale API Intl.supportedValuesOf 関数 が追加 Intl.Locale オブジェクトに calendars や timeZones
などのプロパティがあり そのロケールで使用されているものをみることができる Intl.supportedValuesOf() を使用するとそれらのプロパティがどんな値をサポートしてい るのか確認することができる i18n対応をする際に使用されているようです、ギリシャの暦に対応しなくてはならないみ たいな時に - https://v8.dev/blog/v8-release-99#intl.locale-extensions - https://v8.dev/blog/v8-release-99#intl-enumeration
node: プレフィックスとは? このプレフィックスをつけることで、Nodeのコアモジュールであることを明示することがで きる Nodeのコアモジュールに対してつけることができ、このプレフィックスのあるなしで動作 は変わらない V18の変更点である、node:test は node: プレフィックスが必須のモジュールになってい
る 実はnodeV14 からあったらしい