JavaScriptで扱うことのできるデータ型は、プリミティブ型(基本型)とオブジェクト型の2つに分類されます。
この記事では、データ型のタイプの1つ『プリミティブ型』について学びます。
プリミティブ型(基本型)とは
プリミティブ型に属する値は、『数値』『文字列』『論理値』があります。加えて、特殊な値『null』『undefind』がプリミティブ型に属します。
プリミティブ型のデータは、データを構成する最も基本的なもので、不変な値として定義されています。プリミティブ型の値を
プリミティブ値といい、プリミティブ値を変数に代入すると、変数にはその値が格納されます。
ワラ
数値
数値とは、、数字です。
プログラムに直接記述できる定数値をリテラルといい、数値を表すリテラルには、『整数リテラル』と『浮動小数点リテラル』があります。
難しいかもしれませんが、分類を表にしておきます。
まずは、こういうものがあると認識しておいて、プログラミングをしていく中で覚えていくといいと思います。
分類 | 表記法 | 表記例 | 説明 | 備考 |
---|---|---|---|---|
整数リテラル | 10進数 | 123 | 何も付けずに整数をそのまま記述する | |
16進数 | 0x2a | 先頭に0xをつける | ||
8進数 | 0o73 | 先頭に0oをつける | ES6 | |
2進数 | 0b101 | 先頭に0bをつける | ES6 | |
浮動小数点リテラル | 整数.小数 | 3.14 | 小数をそのまま記述する | |
.小数 | .123 | 整数部分が0の場合は省略できる | ||
仮数e指数 | 6.02e23 | 6.02*10 23乗 | ||
仮数E指数 | 1.616199E-35 | 1.616199*10 -35乗 |
文字列
文字列リテラルは、シングルクォーテーション(’)、もしくはダブルクォーテーション(”)のいずれかで文字列を囲んで表ます。
'hope hope, huga huga.'
"ほげほげ、ふがふが。"
""
'3.14'
文字列の中に’を含む場合は”で囲み、”を含む場合は’で囲めば、それを記述することができます。
”i'm going to learn Javascript”
<input type="button" value="Click" onclick="alert('huge')">
特殊な文字
改行やタブなどの文字は、そのまま文字列として使用することはできません。このような特別な文字はエスケープシーケンスで表すことができます。エスケープシーケンスは、バックスラッシュ(\)の後に特定の文字を記述したもので、これにより特定の制御コードや文字を表すことができます。
エスケープシーケンス | 意味 | 備考 |
---|---|---|
\0 | ヌル文字 | |
\b | バックスペース | |
\t | 水平タブ | |
\n | 改行 | |
\v | 垂直タブ | |
\f | 改ページ | |
\r | 復帰(CR) | |
\’ | シングルクォーテーション | |
\” | ダブルクォーテーション | |
\\ | バックスラッシュ | |
\xXX | 2桁の16進数XXで指定するLatin-1文字 | |
\uXXXX | 4桁の16進数XXXXで指定するUnicode文字 | |
\u{XXXXXX} | 16進数のコードポイントXXXXXXで指定するUnicode文字 | ES6 |
論理値
論理値とは、条件式が真である偽であるかを表すための値。論理値には、trueとfalseの2つがあります。trueは真であることを、falseは偽であることを表ます。
x == 2
この式はxが2に等しいかどうかを表す条件式です。==は左辺が右辺に等しいことを表す関係演算子です。この式の値は、変数xの値が2のときはtrueとなり、そうでないときはfalseとなります。
ワラ
特殊な値(null、undefind)
「値が存在しない」ことを表す値として、nullとundefinedがあります。
・存在しないオブジェクトのプロパティを読み出そうとしたときの値
・存在しない配列の要素を読み出そうとしたときの値
・戻り値のない関数の戻り値
・関数の呼び出し時に指定されなかった引数の値
nullは、「空」を値を表すリテラルです。nullは、おもにプログラムで何かを検索したが見つからなかった場合に、何もなかったことを伝えるための値として用いられます。
シンボル
シンボルはECMAScript6で導入された新しいプリミティブ値です。シンボルは自分自身のみと等しく、他の全ての値と異なるユニークな値となります。
シンボルはSymbol()を使って生成します。
var sym1 = Symbol();
var sym2 = Symbol();
console.log(sym1 == sym2); // → false
var HEART = symbol("ハート");
console.log(HEART.toString()); // → Symbol(ハート)
ワラ
まとめ
プリティブ型について理解は深まりましたでしょうか。値については実践の中で覚えていくことも多いので、ここではどういった値の種類が存在しているかを把握する程度で十分かと思います。