JavaScript: 連想配列とオブジェクトの違い

JavaScript では「連想配列」という用語を特に使いません。

他のプログラム言語で言う連想配列のことを、 JavaScriptではオブジェクトといいます。

オブジェクトは次のように記述します。


var obj = {
    id: 1,
    name : 'Tanaka'
};

// name プロパティの値を表示
console.log(obj.name);     // Tanaka
console.log(obj['name']);  // Tanaka

これだけだと、連想配列と同じと言えます。

ですがJavaScript の場合は、値としてデータだけではなく、 関数(処理)をいれることができます。下の例では getName が関数(処理)です。


var obj = {
    id: 1,
    name : 'Tanaka',
    getName: function(){console.log(this.name);}
};

// オブジェクトの関数を呼び出す
obj.getName();  // Tanaka
    

JavaScript のオブジェクトには、上のように関数を入れることができるのです。

値としてデータだけしか入っていない場合は、連想配列といっても特に問題はないと思います。 しかし、関数(処理)が入っている場合はオブジェクトといいます。

そこで広い意味でオブジェクトと呼んでいます。 そうすればデータだけの場合でも、関数(処理)が入っている場合でも当てはまります。

ですからJavaScript では「連想配列」という用語は特に使わずに、「オブジェクト」という用語を使います。

関連記事: 配列とオブジェクトの違い

ツール・書籍紹介

まとめ・一覧

基本編

数値

文字列

正規表現

日付・時刻

配列

関数

オブジェクト指向

DOM操作

API

便利な小技集

用語

実践編

関連サイト