TypeScript 入門 配列のいずれかの要素を受け取る関数
例えば以下のような配列があり、
この配列の要素のいずれかを引数に受け取る関数を定義したいとします。
const f1 = (value: V) => {//do something}Vの型の定義は以下にな ...
映画 「楽園」をみた感想
佐藤浩市が好きなのとAmazon Primeで見れたので、見てみました。
内容をものすごく簡潔にいうと、三人の登場人物が村八分のような状態になって、それぞれ不幸になっていくという悲しいお話でした。
これをみると ...
TypeScript 入門 Push型を定義する
配列に要素を追加するような型を定義します。
type Push<T extends unknown使い方。
type T1 = Push<, 3>//type T2 = Push<, ' ...
TypeScript 入門 Include型を定義する
配列の中に、指定した値があれば true、そうでない場合はfalseを返す型です。
type Includes<T extends readonly any ? true : false
TypeScript入門 二つの配列の型を足した型を返す
二つの配列の型を足したConcat型を定義します。
type Concat<T extends unknown> =TとUは、どちらも配列型と互換性があることがポイントです。
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 ...