JavaScriptの変数とデータ型について
JavaScriptでは、変数とデータ型がプログラムの基盤を形成しています。
変数は、データを格納するための名前付きの容器であり、データ型はそのデータの種類を示します。
このカリキュラムでは、変数の宣言方法やデータ型の種類、
そしてそれらの使用方法について詳しく説明します。
変数の宣言とスコープ
JavaScriptでは、変数を宣言するために var
, let
, const
の3つのキーワードを使用します。それぞれのキーワードには、異なる特性と使用場面があります。
var
による変数宣言
var
は、ES6(2015年に導入されたECMAScript 6)以前から存在する変数宣言の方法です。var
で宣言された変数は、関数スコープを持ちます。
これは、変数が宣言された関数内でのみ有効であり、関数の外ではアクセスできないことを意味します。
function example() {
var x = 10;
if (true) {
var x = 20; // 同じ関数内で再宣言
console.log(x); // 20
}
console.log(x); // 20
}
example();
この例では、var
で宣言された変数 x
は、関数内で再宣言されて同じスコープを共有しています。
let
による変数宣言
let
は、ブロックスコープを持つ変数を宣言するための方法です。ブロックスコープとは、変数が宣言されたブロック {}
内でのみ有効であることを意味します。
function example() {
let y = 10;
if (true) {
let y = 20; // ブロック内での再宣言
console.log(y); // 20
}
console.log(y); // 10
}
example();
この例では、let
で宣言された変数 y
は、ブロック内で独立したスコープを持ち、
外側の y
に影響を与えません。
const
による変数宣言
const
は、再代入ができない定数を宣言するための方法です。const
で宣言された変数は、宣言と同時に初期化される必要があります。
また、ブロックスコープを持ちます。
function example() {
const z = 10;
// z = 20; // エラー: 再代入はできない
console.log(z); // 10
}
example();
この例では、const
で宣言された変数 z
は再代入ができず、宣言時の値が保持されます。
データ型
JavaScriptには、プリミティブ型とオブジェクト型の2種類のデータ型があります。
プリミティブ型には、数値、文字列、真偽値、undefined
、null
、シンボル、ビッグイントがあります。
オブジェクト型には、オブジェクト、配列、関数などがあります。
プリミティブ型
数値(Number)
数値型は整数および浮動小数点数を表します。
let age = 25;
let temperature = 36.5;
console.log(typeof age); // "number"
console.log(typeof temperature); // "number"
文字列(String)
文字列型はテキストデータを表します。文字列はシングルクォート '
またはダブルクォート "
で囲みます。
let greeting = "Hello, World!";
let name = 'Alice';
console.log(typeof greeting); // "string"
console.log(typeof name); // "string"
真偽値(Boolean)
真偽値型は true
または false
の二つの値を持ちます。
let isStudent = true;
let hasGraduated = false;
console.log(typeof isStudent); // "boolean"
console.log(typeof hasGraduated); // "boolean"
undefined
undefined
は、変数が宣言されたが値が割り当てられていないことを示します。
let unknown;
console.log(typeof unknown); // "undefined"
null
null
は、意図的に値が空であることを示します。
let empty = null;
console.log(typeof empty); // "object" (これはJavaScriptの歴史的なバグです)
シンボル(Symbol)
シンボルは、一意の識別子を表します。主にオブジェクトのプロパティとして使用されます。
let sym = Symbol("description");
console.log(typeof sym); // "symbol"
ビッグイント(BigInt)
ビッグイントは、任意の精度の整数を表します。
数値型では扱えない非常に大きな整数を扱うことができます。
let bigNumber = 123456789012345678901234567890n;
console.log(typeof bigNumber); // "bigint"
オブジェクト型
オブジェクト型は、複数の値やメソッドを保持するためのデータ構造です。
JavaScriptのオブジェクト型には、オブジェクト、配列、関数などがあります。
オブジェクト(Object)
オブジェクトは、キーと値のペアの集合です。
let person = {
name: "Alice",
age: 30,
greet: function() {
console.log("Hello, " + this.name);
}
};
console.log(person.name); // "Alice"
person.greet(); // "Hello, Alice"
配列(Array)
配列は、順序付きの値のリストを表します。インデックスを使用して要素にアクセスします。
let fruits = ["Apple", "Banana", "Cherry"];
console.log(fruits[0]); // "Apple"
fruits.push("Date");
console.log(fruits); // ["Apple", "Banana", "Cherry", "Date"]
関数(Function)
関数は、再利用可能なコードのブロックであり、特定のタスクを実行します。
function add(a, b) {
return a + b;
}
console.log(add(2, 3)); // 5
型の変換
JavaScriptでは、異なるデータ型間で値を変換することができます。
文字列から数値への変換
let str = "123";
let num = Number(str);
console.log(num); // 123
console.log(typeof num); // "number"
数値から文字列への変換
let num = 123;
let str = String(num);
console.log(str); // "123"
console.log(typeof str); // "string"
真偽値から文字列への変換
let bool = true;
let str = String(bool);
console.log(str); // "true"
console.log(typeof str); // "string"
まとめ
このカリキュラムでは、JavaScriptの変数とデータ型について詳しく説明しました。変数の宣言方法やスコープ、プリミティブ型とオブジェクト型のデータ型、それらの使用方法や型の変換について学びました。
これらの基礎を理解することで、JavaScriptプログラムの構築がより効率的に行えるようになります。
次のステップでは、これらの知識を活用して、より高度なプログラミング技術を習得していきましょう。
高度な配列メソッド:map, filter, reduce
8月 20, 2024モジュールとインポート/エクスポートについて
8月 17, 2024ローカルストレージとセッションストレージ
8月 16, 2024