【かたへんかん】
型変換(キャスト) とは?
最終更新:
💡 文字の「3」を、計算できる数の3へ
値を、別の型として扱える形へ変換すること。明示して行う変換と、演算などに伴う暗黙の変換があり、具体的な動作は言語や関数によって異なります。
📌 このページのポイント
- 値を別の型へ変換する操作
- 明示して行う変換と、暗黙に起きる変換がある
- 変換後の値や失敗時の動作は、言語・関数で確認する
- TypeScriptの型アサーションは、実行時の変換ではない
文字の「3」と、数の3は違うの?
JavaScriptでは違うよ。例えば文字列の'3'と数の5を+でつなぐと、文字列の'35'になる。Number('3')で数へ変換してから5を足すと8になるよ。ここではJavaScriptの例で、全ての言語が同じ規則というわけではない。
暗黙の変換って何?
プログラマーが変換を指定しなくても、演算などの規則で値の型が変わることだよ。今の'3' + 5では、数の5が文字列として扱われて連結された。明示する変換ではNumber()などを使い、何をしたいかをコードに書くんだ。
Number()なら、どんな入力でも安心?
TypeScriptのasでも、値は変わる?
asによる型アサーションは、コンパイラーに型の情報を伝えるもので、実行時の値を変換したり検証したりしないよ。TypeScriptは許されるアサーションの範囲も確認するけれど、実際の入力を変える処理ではない。必要な変換と入力確認は別に書くんだ。
まとめ:ざっくりこれだけ覚えればOK!
「型変換」って出てきたら「値を別の型へ変える操作」と思えばだいたいOK!
📖 おまけ:英語の意味
「Type Conversion / Type Casting」 = 型の変換
💬 言語によってcastingやconversionの使い方に違いがあります。ここでは値を別の型へ変換する考え方を、JavaScriptの例で説明します。