編集

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-expressionstrict-boolean-expressionsと似ているが、この機能は次のコードのようなユーザーによる記述ミスの発見を目的にしているように思える。

tsx
if (/0x[0-9a-f]/) {
  // Error
}
if ((x) => 0) {
  // Error
}

この機能では、条件式を変数に切り出したり、慣用的に使われるwhile(true)などに対してはエラーを出さない。

#Iterator Helper Methods

TC39 のStage 3 Iterator Helpersが実装され、機能の乏しかったイテレータにmapfiltertakeなど多くのメソッドが追加された。これにより、配列を介さずともイテレータの操作が簡単に行えるようになった。

また、これらのメソッドを持つイテレータオブジェクトであるIteratorObject型も追加された。

編集