TypeScript の勉強 `typeof` の使用: 型チェックとそのメリット
typeof
の使用: 型チェックとそのメリット
TypeScript における TypeScriptは、静的型チェックをサポートするJavaScriptのスーパーセットです。この静的型チェックは、コンパイル時に変数の型を確認して、意図しない型の使用や代入を防ぐ役割を持っています。しかしその一方で、実行時にも変数の型をチェックする方法が必要な場合があります。その際に役立つのが、typeof
オペレーターです。
はじめに
インフラエンジニアの私がAWS CDKの為の勉強の為の備忘録です。TypeScript における typeof
の使用について勉強しました。
typeof
の使用方法:
typeof
は、変数の型を文字列として返すJavaScriptのオペレーターです。TypeScriptでも、実行時の型チェックにtypeof
を使用することができます。
例として以下のコードを見てみましょう:
const user = { name: '山田 太郎', age: 25, married: false };
if (typeof user.age === 'number') {
console.log(user.age + 1); // number 型として処理が可能
}
if (typeof user.married === 'boolean') {
console.log(!user.married); // boolean 型として処理が可能
}
このコードでは、user
オブジェクトのage
プロパティがnumber
型であるか、married
プロパティがboolean
型であるかをチェックしています。
typeof
を使うのか?
何故 -
型安全: もし変数が期待する型と異なる型である場合、意図しない動作やエラーを防ぐために、先に型をチェックすることが推奨されます。
-
柔軟性: 変数が特定の型を持つことを確認した後、その型に特有の操作やメソッドを安全に使用できます。
-
明確な意図: コードを読む他の開発者に対して、ある変数が特定の型を持つことを期待していることを明示的に示すことができます。
まとめ:
TypeScriptは、コンパイル時に型の安全性を確保するための多くのツールを提供しています。しかし、実行時の型チェックが必要な場面もあります。そのような場面でtypeof
を使用することで、コードの安全性と可読性を高めることができます。
参考
実践 AWS CDK - TypeScript でインフラもアプリも! - Silverworks - BOOTH
Discussion