割とよくあるのはcolorをカラーコード指定させたいが、rgbやHEXカラーも許容したい場合があります。
type Color = ‘red’ | ‘blue’ | string
のように定義したくなりますが、この場合はアップキャストされてstringになります。
‘red’がstringのサブタイプなのでアップキャストされます。
一方で大文字のStringはstringとは似て非なる存在です。
Stringはstringを受け付けますが、stringはStringを受け付けません。
なので、上図のcolor3ように定義することで特定の文字列or任意の文字列を実現できます。
TypeScriptで特定の文字列または全ての文字列を定義する | miyauci.me
TypeScriptで 'string' | string を定義する方法を紹介します。通常はstring型にアップキャ...
コメント