TypeScript入門 Ifの動きをする型定義
3つのジェネリクス(C、T、F)を受け取り、CがtrueならTを、falseならFを返す。
type If<C extends boolean, T, F> = C extends true ? T : FCは ...
TypeScript 入門 Promise の T の部分の型を取得する方法
Promise<string>であれば、string を返すような型を考える。
inferを使うことで可能です。
type Await<T> = T extends Promise<infer ...
TypeScript 入門 Excludeを実装する
Excludeは以下のように実装されています。
type MyExclude<T, U> = T extends U ? never : Tこれを使ってみると
type T1 = MyExclude< ...
TypeScript入門 タプル型の長さを求める
タプル型を渡すとその型のlengthを返す型です。
type Length<T extends any;Tが配列であれば、lengthというプロパティがあることが保証されるので、上記ようにTとすることができます。
TypeScript入門 配列の最後の要素の型を取得する方法
配列の最後の要素の型を取得する方法です。
type Last<T extends any ? U : nevertype T1 = Last<>//numbertype T2 = Last<>//n ...
TypeScript入門 配列の先頭の要素の型を取得する方法
であれば string を、 であれば boolean を返すような型を作ります。
はじめに思いついたのが以下です。
type First<T extends anyとてもシンプルなのですがひとつ問題が ...
TypeScript入門 配列の要素の型を取得する
配列の中の要素の型を取得する場合はT1のようにします。
以下が例です。
type T1 = Array<string>type T2 = T1//T2 は stringtype T3 = Array< ...
TypeScript Omitを使わずに指定したキーをオブジェクトから削除する
指定したキーを削除した型を返したい場合はOmitを使います。
type User = { firstName: string lastName: string age: number}type T1 = Omit<User ...
TypeScript 任意の数の引数をとるが、一番最後だけ特定の型を受け取る関数の書き方
Variadic tuple typesを使用したサンプルです。TypeScript4.0以降にする必要があります。
例えば、任意のstringを受け取るが、最後の引数だけはnumberを受け取る関数を定義してみます。
プルリクを出す時にやると良くないこと
プルリクを出す時に、レビュアーがわかりやすいように、自分でコメントを書いて補足してしまうことがあったのですが、そのコメントはPRが消化された後はコード上には残りません。
もし、コメント書かないと意図が伝わらないのでは?と感 ...









