JavaScript/JavaScriptの型と値
表示
概要
[編集]JavaScriptは、動的型付け言語であり、変数に格納される値がその型を決定します。JavaScriptには7つの基本データ型(プリミティブ型)と1つのオブジェクト型があります。本記事では、それらの型の特性と利用法について解説します。
データ型
[編集]JavaScriptのデータ型は以下のように分類されます。
プリミティブ型
[編集]プリミティブ型は、変更不可能な基本データ型です。
undefined
- 値が未定義であることを表します。変数が宣言されただけで値が代入されていない場合、自動的に
undefined
となります。 leta;console.log(a);// undefined
null
- 値が空であることを明示的に示します。オブジェクトが存在しないことを意味します。
letb=null;console.log(b);// null
boolean
- 真偽値を表します。値は
true
またはfalse
のいずれかです。 letisValid=true;console.log(isValid);// true
number
- 数値を表します。整数および浮動小数点数が含まれます。
letnum=42;console.log(num);// 42
bigint
- 任意の精度の整数を扱う型です。数値リテラルの末尾に
n
を付けることで作成します。 letbig=9007199254740991n;console.log(big);// 9007199254740991n
string
- テキストデータを表します。シングルクォーテーション、ダブルクォーテーション、またはテンプレートリテラルで作成します。
lettext="Hello, World!";console.log(text);// Hello, World!
symbol
- 一意の識別子を作成するために使用されます。
letsym=Symbol("unique");console.log(sym);// Symbol(unique)
オブジェクト型
[編集]オブジェクト型は複雑なデータ構造を表すための型です。配列や関数もこの型に含まれます。
letobj={name:"John",age:30};console.log(obj.name);// John
型の判定
[編集]JavaScriptでは、typeof
演算子を使用して値の型を判定できます。
console.log(typeof42);// "number"console.log(typeof"text");// "string"console.log(typeoftrue);// "boolean"console.log(typeofundefined);// "undefined"console.log(typeofnull);// "object" (仕様上のバグ)console.log(typeof{});// "object"console.log(typeofSymbol());// "symbol"
特殊な値
[編集]NaN
は"Not-a-Number"の略で、無効な数値演算の結果として生成されます。
console.log(0/0);// NaN
無限大を表します。数値が範囲外になった場合に生成されます。
console.log(1/0);// Infinity
型変換
[編集]JavaScriptでは、暗黙的または明示的な型変換が発生することがあります。
暗黙的な型変換
[編集]console.log("5"+5);// "55" (文字列に変換される)
明示的な型変換
[編集]console.log(Number("42"));// 42console.log(String(42));// "42"
注意点
[編集]console.log(undefined==null);// trueconsole.log(undefined===null);// false