広告スペース(バナー)
🔷TypeScript レッスン
基本の型を知ろう5▾
オブジェクトの形を定義する6▾
クラスとジェネリクス4▾
レッスン 17 / 20
any型とunknown型
このレッスンでは、型が分からない値を扱うためのany型とunknown型の違いを学びます。「TypeScript any unknown 違い」で調べている方向けです。
any型は「どんな型でも受け入れる、TypeScriptの型チェックを実質オフにする」型です。一方unknown型も同じくどんな値でも受け入れますが、実際に使う前に必ず型を確認しないとエラーになる、より安全な型です。
サンプルコードでは、外部から受け取ったと想定した値をunknown型で受け取り、typeofで文字列かどうかを確認してから.toUpperCase()を呼び出しています。
初心者がよくつまずくのが、「型が分からないから、とりあえずany型にしておこう」と安易に使ってしまうことです。anyを多用すると、TypeScriptを使うメリットである型チェックが失われてしまいます。迷ったらunknownを使い、必要な分だけ型を絞り込むのが安全です。
実際の開発現場では、外部APIのレスポンスやJSON.parseの結果など、「実行するまで型が確定しないデータ」をunknownで受け取り、検証してから使う、という書き方が推奨されています。
📖 お手本コード
✍️ あなたのコード
コードを書いたら「実行する」を押してください
🧪 このサイトではTypeScriptを直接コンパイル・実行できないため、お手本コードと同じ内容を入力できたかをその場で判定します(採点はブラウザ内だけで行われ、どこにも送信されません)。
🎯
ここまでできればゴール達成!
型が分からない値でも安全に処理を分けられるようになります。
型が分からない値でも安全に処理を分けられるようになります。
広告スペース(バナー)
広告スペース(記事内)