JavaScriptの変数の型
JavaScriptでは、変数の型には大きく分けてプリミティブ型と複合型があります。
プリミティブ型
プリミティブ型は、データを直接保持し、変更不可能な値(immutable)です。JavaScriptでのプリミティブ型には以下のものが含まれます。
- 文字列 (String): 任意の文字列データ。「Hello, World!」など。
- 数値 (Number): 整数または浮動小数点数。例: 42, 3.14159。
- 真偽値 (Boolean): true または false の2つの値のみを取る。
- null: 値が存在しないことを表す特殊なキーワード。変数が何も参照していないことを意味します。
- undefined: 変数が値を持っていないことを示します。
- シンボル (Symbol): ES6で導入された、ユニークな非文字列の識別子。
複合型
複合型は、オブジェクトへの参照を保持します。
- オブジェクト型: さまざまなプロパティを含むデータ構造。
- 配列型 (List型): 順序付けられたデータの集合。
JavaScriptの変数宣言方法
var(非推奨)
var
は関数スコープを持ち、再定義可能なため、非推奨とされています。これにより、予期せぬバグを引き起こす可能性があります。
javascriptCopy code
var foo;
foo = 10;
let
let
はブロックスコープを持ち、再代入可能です。これにより、より制御された方法で変数を利用することができます。
javascriptCopy code
let bar;
bar = 20;
const
const
はブロックスコープを持ち、一度定義すると再代入が不可能です。定数や変更されるべきでない変数に使用されます。
javascriptCopy code
const baz = 30;
// baz = 40; // TypeErrorが発生します。
変数の巻き上げ
var
で宣言された変数は巻き上げられ、関数またはグローバルスコープの先頭に移動されます。これは、JavaScriptの特有の挙動で、初心者には混乱を招くことがあります。
javascriptCopy code
function example() {
console.log(x); // undefinedが出力される
var x = 'local';
}
example();
オブジェクトのプロパティアクセス方法
- ドット記法: 直接的で読みやすい方法ですが、プロパティ名が有効な識別子である必要があります。
- ブラケット記法: プロパティ名に変数を使用する場合や、有効な識別子でない名前を使用する場合に便利です。
javascriptCopy code
let obj = { a: 'some value' };
console.log(obj.a); // ドット記法
console.log(obj['a']); // ブラケット記法
コメント