JavaScriptには数値、文字列、論理値という三種類の基本データ型があります。また、nullとundefinedというデータ型も定義されています。この他、オブジェクトという複合データ型も定義されており、これは複数の基本型や複合データ型の値の集合となっています。配列と関数もオブジェクトなのですが、他のオブジェクトとは振る舞いが異なるため、本サイトでは配列や関数も独立のデータ型として扱います。この項では基本データ型を紹介します。
最も基本的なデータ型として数値があります。C言語やJavaと異なる点としてJavaScriptは整数と浮動小数点を区別しません。JavaScriptはすべての数値を浮動小数点数で表します。最大値は±1.7976931348623157*10^308で最小値は±*10^(-324)です
様々な数値リテラル
7 //整数リテラル 12345 //整数リテラル 0xff //16進リテラル(数値255=16*15+15) 0x12CAFE //16進リテラル 3.14 //浮動小数点リテラル .111 //浮動小数点リテラル 1.5e23 //浮動小数点リテラル(1.5*10^23) 1.2345678E-10 //浮動小数点リテラル(1.2345678*10^(-10))
Unicodeの文字の並びを表すデータ型です。'または"で囲まれた0個以上のUnicode文字の並びを文字列と言います。C言語のように1文字を表すデータ型は存在しないため、文字を表現したい場合は1文字の文字列を用います。
様々な文字列リテラル
"" //空文字列 'hello' "123.45" 'a="data"' "two lined\nstring" "文字列リテラル"
文字列リテラル中でバックスラッシュ\は特別な意味を持ちます。例えば\nは改行を表すエスケープシーケンスで文字列\nを表すわけではありません。JavaScriptでのエスケープシーケンスをまとめておきます。
エスケープシーケンス | 意味 |
---|---|
\0 | NUL文字(\u0000) |
\b | バックスペース(\u0008) |
\t | 水平タブ(\u0009) |
\n | 改行(\u000a) |
\v | 垂直タブ(\u000b) |
\f | 改ページ(\u000c) |
\r | 復帰(\u000d) |
\" | ダブルクォーテーション(\u0022) |
\' | シングルクォーテーション(\u0027) |
\\ | バックスラッシュ(\u005C) |
\x○○ | 2桁の16進数のユニコード番号 |
\u○○○○ | 4桁の16進数のユニコード番号 |
論理データ型がとりうる値は2つのみでそれぞれtrue,falseというリテラルで表現します。論理値は、主に比較の結果として得られます。
比較演算子
a == 5 //aが5と等しければtrue a != 5 //aが5と異なっていればtrue a > 5 //aが5より大きければtrue a < 5 //aが5より小さければtrue a >= 5 //aが5以上ならtrue a <= 5 //aが5以下ならtrue