中級 › union型(string | number)のメソッド呼び出しで型エラーになる理由 › パターン2
union型(string | number)のメソッド呼び出しで型エラーになる理由
string | numberのようなunion型の値に対して、片方の型にしか無いメソッド(toUpperCaseなど)を呼び出そうとすると、もう一方の型に無いことを理由にエラーになります。
1 function format(value: string | number): string { 2 return value.________(2); ^ 3 } 4 console.log(format(3.14159));
main.ts(2,16): error TS2339: Property 'toFixed' does not exist on type 'string | number'.
空欄を埋めてコンパイルを通す
toFixedはnumberにしかないメソッドです。string | number型のままでは呼び出せません。
次の問題