Closed11
【20日目】TypeScriptのUtility Typesを読む②
ParametersType<Type>
type ParamsType = Parameters<(a:string,b:number)=>any>
const param:ParamsType = [
"string",
1
]
Typeで指定した関数のパラメータの型配列を生成する?
ある関数があって、その関数のパラメータを取り回すときに便利そう?
const list: [number, string, boolean] = tuple();
tupleの型を指定する方法
ConstructorParameter<Type>
コンストラクからTypeを生成する
ReturnType <Type>
Typeに指定した関数の型の返り値の型を生成する
const fn = () => "string"
type FnReturnType = ReturnType<typeof fn> // type FnReturnType = string
InstanceType<Type>
class a {
}
type b = InstanceType<typeof a>
const c:b = new a()
Typeで指定したクラスのインスタンスのTypeを生成する
生成したTypeを使用することで、クラスのインスタンスであることを保証できる
ThisParameterType<Type>
Typeに指定したThisの型を返す?
OmitThisParameterType <Type>
TypeからThisを消した型を返す?
よくわからん
Uppercase<StringType>
Lowercase<StringType>
Capitalize<StringType>
Uncapitalize<StringType>
キーのケースを変換できるやつ
便利そう
type UpperCaseType = Uppercase<"a" | "b" | "c"> // UpperCaseType = "A" | "B" | "C"
type CapitalizeType = Capitalize<"aaa" | "bbb" | "ccc"> // CapitalizeType = "Aaa" | "Bbb" | "Ccc"
type user = {
Name: string,
Age: number
}
type UserKeys = Uncapitalize<keyof user> // UserKeys = "name" | "age"
Utilityタイプ終わり!
このスクラップは2023/04/30にクローズされました