JavaScriptのオブジェクトを作成する方法(リテラル表記とObjectコンストラクタ)
生徒
「JavaScriptで、自分の名前や年齢などの情報をまとめて管理するにはどうすればいいですか?」
先生
「それならオブジェクトを使うのが便利です。情報を名前とセットで整理できますよ。」
生徒
「オブジェクトって、どうやって作るんですか?方法がいろいろあると聞いたことがあります。」
先生
「はい、JavaScriptでは主に2つの方法でオブジェクトを作成できます。ひとつはリテラル表記、もうひとつはObjectコンストラクタという方法です。ひとつずつ説明していきましょう!」
1. JavaScriptのオブジェクト作成とは?
JavaScriptのオブジェクト(Object)は、名前(キー)と値(バリュー)のペアをまとめて扱える便利な仕組みです。例えば、名前や年齢、住所などをひとまとめにできます。
情報を分類して整理する「引き出し」のようなもので、それぞれの引き出しにラベル(キー)が貼ってあり、中身(値)をすぐに取り出せるようなイメージです。
2. リテラル表記によるオブジェクトの作成
リテラル表記は、{ }を使ってオブジェクトを直接定義する方法です。シンプルで読みやすく、最もよく使われています。
const user = {
name: "山田太郎",
age: 30,
city: "大阪"
};
この例では、userというオブジェクトの中に、name(名前)、age(年齢)、city(都市)が入っています。どれもラベル(キー)とその中身(値)のセットです。
3. 値の取り出し方
オブジェクトの中の情報は、キーを使って取り出します。次のように書きます。
・ドット記法
console.log(user.name); // "山田太郎"
・ブラケット記法
console.log(user["city"]); // "大阪"
ブラケット記法は、キーの名前を文字列として書きます。変数を使うときにも便利です。
4. Objectコンストラクタでの作成方法
Objectコンストラクタは、new Object()を使ってオブジェクトを作る方法です。より動的にオブジェクトを作成したいときに使われます。
const user2 = new Object();
user2.name = "佐藤花子";
user2.age = 28;
user2.city = "東京";
new Object()で空のオブジェクトを作成し、そのあとでプロパティ(情報)をひとつずつ追加していく形になります。
5. リテラル表記とObjectコンストラクタの違い
どちらもオブジェクトを作るための方法ですが、書き方や用途に違いがあります。
- リテラル表記:短く書けて、わかりやすい。静的なオブジェクトに向いている。
- Objectコンストラクタ:あとからプロパティを追加しやすく、動的な処理に向いている。
基本的にはリテラル表記を使うのが主流ですが、目的によって使い分けると便利です。
6. オブジェクトの初期状態を空にして作る
必要な情報をあとから追加したいときは、空のオブジェクトからスタートすることもできます。
・リテラル表記で空オブジェクトを作成
const emptyObject = {};
emptyObject.title = "初心者ガイド";
・Objectコンストラクタで空オブジェクトを作成
const anotherEmpty = new Object();
anotherEmpty.title = "オブジェクト学習";
どちらの方法でも、あとから自由にプロパティを追加できます。
7. オブジェクトを使うと何が便利なの?
たとえば、ユーザーの情報、商品の詳細、天気のデータなど、名前ごとにデータを分類したいときにとても役立ちます。
以下のように、わかりやすくデータを整理できるのがオブジェクトの魅力です。
const book = {
title: "JavaScript入門",
author: "中村一郎",
pages: 300
};
このようにオブジェクトを活用すれば、データを「意味のあるかたまり」として扱えます。