TypeScript タプルの型推論改善
以下のような配列はタプル としてではなく、配列として型推論されます。
let a = [1, true] // a は (number | boolean)[]
型アサーションやconstアサーションを使わずに、[number, true] を推論したい場合、レストパラーメータを活用する方法があります。
function tuple<T extends unknown[]>(...ts: T): T {
return ts
}
let b = tuple(1, true) // b は [number, boolean]
最近のコメント