Frontend Weekly 2024-09-13
TypeScript 5.6
TypeScript 5.6 がリリースされた。
https://devblogs.microsoft.com/typescript/announcing-typescript-5-6/
Disallowed Nullish and Truthy Checks
構文的に真偽チェックまたは null チェックが常に一方になる場合、いくつかのケースでエラーを出すようになった。
ESLint のno-constant-binary-expressionや strict-boolean-expressionsと似ているが、この機能は次のコードのようなユーザーによる記述ミスの発見を目的にしているように思える。
if (/0x[0-9a-f]/) { // Error}if ((x) => 0) { // Error}
この機能では、条件式を変数に切り出したり、慣用的に使われるwhile(true)
などに対してはエラーを出さない。
Iterator Helper Methods
TC39 のStage 3 Iterator Helpersが実装され、機能の乏しかったイテレータにmap
やfilter
、take
など多くのメソッドが追加された。これにより、配列を介さずともイテレータの操作が簡単に行えるようになった。
また、これらのメソッドを持つイテレータオブジェクトであるIteratorObject
型も追加された。
ESLint v 9.10.0 Types now included
ESLint v9.10.0 がリリースされた。
型定義を同梱するようになった。今までは@types/eslint
から提供されていた。
Biome v1.9 Anniversary Release
Biome v1.9 がリリースされ、一周年を迎えた。
https://biomejs.dev/blog/biome-v1-9/
CSS と GraphQL をデフォルトでサポートするようになった。またオプトインで.editorconfig
をリスペクトできるようになった。
JavaScript Primer v6.0.0
JavaScript Primer v6.0.0 がリリースされた。ECMAScript 2024 の対応が行われ、Node.js のユースケースを新たに増えた node
https://efcl.info/2024/09/02/jsprimer-v6/
JavaScript Primer は、これから JavaScript を学びたい人向けに書かれた書籍であり、定期的に更新が行われている数少ない入門書である。
What’s new in React 19 – Vercel
Vercel による React v19 の新機能について知っておいた方が良さそうなものを説明する記事が公開された。
null or undefined
Web 標準の文脈において null と undefined は、仕様毎に一貫した使い方がされている。
Vitest Browser Mode を試す
Vitest 2.0 で追加された実験的機能である Browser Mode を試した記事。
https://zenn.dev/toshusai/articles/212ae67ed91302
Vitest Browser Mode は、Playwright や Webdriverio などを利用してテストをブラウザ上で実行する機能であり、Playwright Component Test や Storybook Portable stories などと同様に、既存の E2E テストの扱いにくさを軽減しつつ恩恵を受けることができる。
CSS @property and the New Style
全てのモダンブラウザで利用できるようになった CSS @property を利用して、CTA ボタンで良く見られるエフェクトを実装する。