MENU

プリミティブデータタイプについて

JavaScriptの基本的なデータタイプのことをプリミティブデータ型と言います。

主要なプリミティブデータタイプには、次のようなものがあります。

上から、数値(Nubers)、文字列(Strings)、真偽値(Booleans)、undefined(アンデファインド)、null(ヌル)、シンボル(Symbol)です。

上記をコンソールに出力したものがこちらになります↓

目次

いつ使うの?

これらのプリミティブデータ型は、JavaScriptの基礎的なデータ操作や計算に使われます。

JavaScriptではオブジェクトという複合データ型も使用できますが、プリミティブデータ型はオブジェクトとは違いimmutable(値を変更できない)なため、操作が簡単で高速だそうです。

これまで理解できなかったUndefinedとNullの違いについて

プログラミングの勉強をしていると、「その一言を先に言ってよ!」と思うことが多々あります。

UndefinedとNullの違いがずっとわからなかったのですが(どちらもデータがないってことでしょという、ざっくりとした認識)DevEdによると、下記のことらしいです。

Undefined : まだ値を入れていない状態 → これからデータが入る可能性有り
Null : データがないということを最初に定義している → 永遠にデータが入る可能性なし

Undefinedの方は、「今はまだ値は入ってないけど、これから入るかもしれないよ!(データが入る可能性有り)」

Nullの方は、「最初にデータがないことを定義してるから、永遠にデータはない(データが入る可能性なし)」ということです。

なんてわかりやすい説明なのでしょう!とスッキリしました。

もう一つの謎だった、シンボルについて

こちらのシンボルも謎でした。「シンボルって何かの象徴??でも何の?」という感じで放ってました(笑)

シンボルは、変数(valiable)を唯一無二のものに設定するために存在しているそうです。以前感じていた、私の謎に従って言うと「何の象徴かというと、変数を象徴している」ということですね。

もう一度、シンボルのコードを見てみると、nameOneにSymbol()を割り当てて唯一のものにしています。そして、次の行では、nameTwoにもSymbol()を割り当てて唯一のものにしています。

25行目で、nameOneとnameTwoは同じかと聞いたところ、出てきた答えはノー「false(ピンク下線)」でした。つまり、それぞれに同じSymbol()を当てがっても、その時点でそれぞれが唯一無二のものに設定されるため、結果は違うものとして判定されるということでした。

このことがすごく面白いなぁと感じたのですが、いかがでしょうか?

今日のまとめ

JavaScriptのデータ型については、どんな参考書や動画教材でも、最初の方に紹介されています。

今日は、今まで曖昧だったUndefinedとNullの違い、Symbolについて初めてちゃんと理解できたと思います。

明日は引き続き、Concatenation(連結)について学びます。

では、また。

応援クリックいただけると嬉しいです

にほんブログ村 デザインブログへ にほんブログ村 IT技術ブログへ
目次