🌊
TypeScript5.5でfilterの型推論が強化されました
TypeScript5.5が正式リリースされました。
今回のアップデートで特にうれしいのが配列にfilterをかけた時の型推論の強化です。
const f = (v: (number | null)[]) => v.filter((v) => v !== null);
こういう関数を書いた場合、これまで戻り値は(number | null)[]でしたが、TypeScript5.5ではnumber[]になります。
TypeScript5.4

TypeScript5.5

これまでは型を絞り込むために.flatMap((v) => (v === null ? [] : [v]))みたいな記述をしていましたが、素直に書けるようになって最高ですね。
Discussion