Javascriptのデータ型は、プリミティブ型(Primitives)とオブジェクト型(Objects)に大別されます。
「データ型」を正しく理解するのは、プログラミング超初心者から抜け出すのに必須です。
プリミティブは、単純なデータなのに対し、オブジェクトはプロパティ(値)とメソッド(操作)の集まりですが、具体的なコードを見ながら理解を深めましょう。
プリミティブ型とオブジェクト型の違い
型 | データ |
プリミティブ型 | 数値・文字列・論理値・null・undefined |
オブジェクト型 | その他 |
「プリミティブ型」と「オブジェクト型」の違いは、変数にどの様なデータが入るかで区別する事が出来ます。
そして、プリミティブ型に入るデータは基本的に5種類のみで、それ以外は全てオブジェクト型です。簡単ですね?
プリミティブ型とは?(Primitives)
プリミティブとは、原始的なといった意味で、単純なデータ型を指します。
例えば、「1」、「10」といった数値や「’Tomato’」といった文字列、「true」「false」といった論理値などがプリミティブ型の例です。
例えば、以下のコードを実行してみましょう。
// プリミティブ型(Primitives) var a = 10; //数値 var b = 'Tomato'; //文字列 var c = false; //論理値 console.log(a); console.log(b); console.log(c);
実行結果
10 Tomato false
プリミティブ型のデータdにaと同じ値を代入してみましょう。
var d = a; console.log(d) //10
この後、aのデータを上書きしても、dのデータはそのままです。
a = 20; console.log(a) //20 ←上書きされる console.log(d) //10
オブジェクト型とは?
オブジェクト型はプロパティ(値)とメソッド(操作)の集まりです。
プロパティは、性質(名詞・形容詞)な様なもので、メソッドは行動(動詞)の様なものだと考えて下さい。
オブジェクト型の例
例えば、以下の「fighter」オブジェクトを作ってみましょう。
// オブジェクト型(Objects) var fighter = { name: 'Ryu', age: 28 };
例えば、格闘家(ファイター)には、「名前」や「年齢」といった共通した性質を持ちますよね。
オブジェクト型のプロパティへのアクセス
オブジェクト型のプロパティには以下の様にアクセス出来ます。
console.log(fighter.name); console.log(fighter.age);
実行結果
Ryu 28
「名前」と「年齢」がしっかりと表示されましたね。
なぜオブジェクト型が必要?
「まとめるのに便利」というのが一つの理由です。
例えば、先ほど「fighter」オブジェクトでは、「名前」と「年齢」というプロパティを持っていました。
確かにプリミティブ型として別々に定義しても良いです。
ですが、関連する要素をまとめて管理した方がデータの見通しが良くなります。
なぜまとめると良い?
コードをまとめると、今後のメンテナンスが楽になるというのが一つ。
今は要素が2つしかありませんが、これが10個や20個にもなってくると、漏れ無く
また、この様にまとめてコードを管理する事で、沢山の人が手分けして作業するのも楽になります。
オブジェクト指向プログラミング
プログラミング学習中の方は「オブジェクト型指向プログラミング」という言葉をきっと聞いた事があると思います。
オブジェクトとは「モノ」を意味する英単語で、プログラムを手順ではなく、モノのプロパティ(特性)と操作として見る考え方です。
何となく、分かりにくいオブジェクト指向ですが、開発を楽にするための一つの技術とザックリと捉えてもらえればOKです。
プログラムが大規模になり、沢山の人が手分けして作る必要がから出来た技術だと考えると理解が進みます。
オブジェクト型指向プログラミングは、3つの大きな特徴があるのですが、あなたは分かりますか?
初心者を抜け出してステップアップしたい人はオブジェクト指向でなぜつくるのかという本をまず読むのがオススメです。
オブジェクト指向が生まれた歴史的な経緯から必要性をしっかりと理解する事が出来ます。
JavaSctipt学習にオススメのコース
The Complete JavaScript Course 2019は、Javasctiptの基礎から実践的なアプリケーション作成まで学べるコースです。
「予算管理」サイトと、APIを活用した本格的な「料理レシピ」サイトが出来ます。
また、サイトの設計のアプローチや考え方を見れるのも貴重です。
Javasctiptが背後でどの様に動いているか等についても複数の章を割いて解説しているので、脱初心者したい方から上級者まで幅広くオススメできます。
自分は2017年11月に買いましたが、定期的にアップデートがされており、気づいたら受講生が20万人!!(ほぼ底値の1,500円だとしても売上約3億!!)を超える超人気講座になってました。
今でも良く見返す鉄板の超お得なコースの一つなので、Web開発をしたい人は絶対にサンプルだけでも見ておいて下さい。