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入門 配列の最後の要素の型を取得する方法
配列の最後の要素の型を取得する方法です。
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を受け取る関数を定義してみます。
TypeScript strict-boolean-expressions について
booleanが期待されるところで、boolean以外の型が指定された場合に、strict-boolean-expressions が発生します。
githubにもありますように、サンプルとして以下のようなコードがあります ...
覚書 canvasに円を描く関数
TypeScriptを使って書きました。
わざわざDrawCircleの型を定義しているのは、drawCircle関数からできるだけ型の情報をなくして読むときのノイズを減らすためです。
type Circle = { ...