JavaScript入門 | オブジェクト

オブジェクトとは

オブジェクトとは、実生活で私たちが認識できる物として理解できる。

オブジェクトの例

オブジェクト

  • 猫 kitty

プロパティ

  • cat.name = “ナビ”
  • cat.family = “コリアンショートヘア”
  • cat.age = 0.1
  • cat.weight = 300

メソッド

  • cat.mew()
  • cat.eat()
  • cat.sleep()
  • cat.play()

猫オブジェクトはすべて上記のようなプロパティを持つが、各プロパティの値はインスタンスごとにすべて異なるだろう。

JavaScriptオブジェクト

JavaScriptの基本データ型はオブジェクトである。

オブジェクトとは、名前と値で構成されるプロパティの順序付けされていない集合である。 プロパティの値として関数が来ることもあり、このようなプロパティをメソッドという。

var cat = "ナビ"; // 一般的な変数の宣言
// オブジェクトも多くの値を持つ変数の一種である。
var kitty = { name: "ナビ", family: "コリアンショートヘア", age: 1, weight: 1.1 };
cat          // ナビ
kitty.name   // ナビ

JavaScriptでは、数値、文字列、真偽値、undefined型を除くすべてがオブジェクトである。
ただし、数値、文字列、真偽値のようなプリミティブ型は、値が決まったオブジェクトとして扱われるため、オブジェクトとしての特徴もあわせ持つ。

オブジェクトのプロパティ参照

JavaScriptでオブジェクトのプロパティを参照する方法は次のとおりである。

構文

オブジェクト名.プロパティ名
または
オブジェクト名["プロパティ名"]
var person = {
    name: "ホン・ギルドン", // 名前プロパティを定義する。
    birthday: "030219",    // 生年月日プロパティを定義する。
    pId: "1234567",        // 個人IDプロパティを定義する。
    fullId: function() {   // 生年月日と個人IDを合わせて住民登録番号を返す。
        return this.birthday + this.pId;
    }
};
person.name    // ホン・ギルドン
person["name"] // ホン・ギルドン

オブジェクトのメソッド参照

JavaScriptでオブジェクトのメソッドを参照する方法は次のとおりである。

構文

オブジェクト名.メソッド名()
var person = {
    name: "ホン・ギルドン",
    birthday: "030219",
    pId: "1234567",
    fullId: function() {
        return this.birthday + this.pId;
    }
};
person.fullId() // 0302191234567
person.fullId;  // function () { return this.birthday + this.pId; } 

メソッドを参照するときにメソッド名の後ろに括弧(())を付けないと、メソッドではなくプロパティそのものを参照することになる。
したがって、括弧を使用せずにプロパティそのものを参照すると、そのメソッドの定義そのものが返される。