Code Fix

上級 › as unknown as Xの二重キャストは型チェックを完全に迂回し、実行時エラーの原因になる › パターン5

as unknown as Xの二重キャストは型チェックを完全に迂回し、実行時エラーの原因になる

TypeScriptは通常、明らかに無関係な型同士のasによるキャストをエラーにします。

 1  function joinAll(items: string[]): string {
 2    return items.join(",");
 3  }
 4  const raw: boolean = true;
 5  console.log(joinAll(__________________________));
                                     ^
main.ts:2 TypeError: items.join is not a function

空欄を埋めてコンパイルを通す

広告
広告スロット(未設定)

as unknown as Xの二重キャストは型チェックを完全に迂回し、実行時エラーの原因になる

しかしunknownを経由する(as unknown as X)と、この安全装置を完全に迂回でき、どんな型にも変換できてしまいます。

このエラーの解説と類題をまとめて見る →

広告
広告スロット(未設定)