iOSエンジニアのつぶやき

毎朝8:30に iOS 関連の技術について1つぶやいています。まれに釣りについてつぶやく可能性があります。

TypeScriptで型チェックってどうやるの?

結論

typeof演算子を使って下記のように分岐を行うことができます。

if (typeof value === 'number') {
  return (value as number).toString()
} 

また、下記のような場合はundefinedは判定されますが、nullは許容されるので、nullをはじきたい場合はその下の例のように記述する必要があります。

if (typeof value !== 'undefined') {
  // valueがnullの可能性あり
}
if (typeof data !== 'undefined' && data !== null) {
  // valueはundefinedではなく、nullでもない
}

そもそもこのような場合は、typeof使わないで下記のようにかけるそうですね。

参照: https://typescript-jp.gitbook.io/deep-dive/recap/null-undefined#dochiradearukawochekkusuru

if (arg != null) {
    // valueはundefinedではなく、nullでもない
}

ちなみにそれぞれの型は、typeofで下記のように出力されるらしい。

出力
undefined 'undefined'
null 'object'
boolean 'boolean'
number 'number'
symbol 'symbol'
string 'string'
function 'function'
参照などが解決できない場合 'undefined'
その他 'object'

てな感じで本日も以上となります🍺

参考

その他の記事

yamato8010.hatenablog.com

yamato8010.hatenablog.com

yamato8010.hatenablog.com