【でーたがた】

データ型 とは?

最終更新:
💡 データの「種類」を明確にする仕組み

プログラムで扱う値の種類を表すもの。数値・文字列・真偽値などがあり、使える値や操作を考える手がかりになる。型の種類や規則は言語によって異なる。

📌 このページのポイント
値の種類を区別する:JavaScriptの例 number 42 / 3.14 数値 string "Hello" 文字列 boolean true / false 真偽値 空を表す値 null / undefined 別々の値 複数の値をまとめる 1 2 3 配列 { name: "Aki" } オブジェクト 1 + 2 → 3  "1" + 2 → "12"
代表的な値の例。型の全一覧ではない。JavaScriptの配列もオブジェクトの一種。
ひよこ ひよこ
基本的なデータ型って何があるの?
ペンギン先生 ペンギン先生
数値、文字列、true・falseの真偽値が代表例だよ。ただし型の一覧は言語で違う。JavaScriptでは42も3.14もnumberで、ほかにbigintやsymbolなどもある。『6種類が全言語で共通』というわけではないんだ。
ひよこ ひよこ
数値の1と文字の1は違う?
ペンギン先生 ペンギン先生
違うよ。JavaScriptでは文字列の"1"に2を足すと"12"という文字列になり、2を引くと-1という数値になる。演算によって暗黙の型変換が働くんだ。型と変換の規則を知ると、意図と違う計算を避けやすいね。
ひよこ ひよこ
配列やオブジェクトも型なの?
ペンギン先生 ペンギン先生
JavaScriptの配列は、値を順番に並べたオブジェクトの一種だよ。普通のオブジェクトならnameなどのプロパティ名と値を組にできる。言語によって配列や辞書の型は違うから、『オブジェクトは必ず連想配列』とは言えないんだ。
ひよこ ひよこ
nullとundefinedはどちらも空?
ペンギン先生 ペンギン先生
JavaScriptではどちらも特別な値だけど、同じ値ではないよ。undefinedは未初期化の変数や存在しないプロパティ、値を返さない関数などで現れるし、明示的にも設定できる。nullは空であることを表すのに使われる。使い方を決めて区別するんだね。
ひよこ ひよこ
静的型付けと動的型付けの違いは?
ペンギン先生 ペンギン先生
TypeScriptは実行前に型を検査し、注釈を書かなくても初期値から型を推論できるよ。JavaScriptでは変数に異なる型の値を代入でき、実行時の値に応じて操作する。静的な型検査で、実行中の不具合を全部防げるわけではないんだ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「データ型」って出てきたら「数値や文字列など、値の種類を表すもの」と思えばだいたいOK!
📖 おまけ:英語の意味
「Data Type」 = データの種類・型
💬 どんな値か、どんな操作ができるかを考えるための分類だよ。すべての言語で同じ型の一覧を使うわけではないんだ。

参考資料

← 用語集にもどる