#はじめに
前回の記事にて配列について説明させていただきましたので、今回はそれと似たオブジェクトについて解説します。
#注意
本記事は一部未完成なため、近日修正します。
#実行
配列は次のように書くのでした。(筆者の好きな女性声優です)
var VoiceActhor = ["小岩井ことり","悠木碧","佐藤聡美","井口裕香","小松未可子"];
このように、配列は同じ種類のデータの集まりとなります。
そのため、違う種類のデータを集まりとしては使いにくいところがあります。
例えば、声優さんの名前・年齢・デビュー作・代表作・趣味を一つの配列に代入するとします。
var VoiceActhor1 = ["小岩井ことり", 29, "青の祓魔師", "アイドルマスターミリオンライブ!","釣り・作詞作曲・DTM"];
これだと、デビュー作と代表作がどっちがどっちなのか分かりにくいですね。
このように、違う種類のデータを扱う場合は、配列ではなくオブジェクトを使用します。
呼び方は違いますがRubyでいうハッシュオブジェクトと同じようなものと思ってください。
前述の配列をオブジェクトで書き直すと次のように書きます。
var VoiceActhor1 = {name: "小岩井ことり", age: 29, debut_title: "青の祓魔師", famous_title: "アイドルマスターミリオンライブ!",hoby: "釣り・作詞作曲・DTM"};
配列との違いは[]
で囲っていたところを{}
で囲っているところ。
そして、それぞれの情報の前にname:
等の :
付の項目が追加されているところです。
この場合name:
をプロパティ名,小岩井ことり
の部分を値と言います。2つ合わせてプロパティといい、この場合はプロパティ名がnameなので***nameプロパティ```といったりします。
配列は要素の一つを出力する場合は並び順を指定してやれば良かったですが、オブジェクトの場合はプロパティ名を指定します。
例えば、"小岩井ことりさんおデビュー作は「青の祓魔師」です"と出力したい時は
var VoiceActhor1 = {name: "小岩井ことり", age: 29, debut_title: "青の祓魔師", famous_title: "アイドルマスターミリオンライブ!",hoby: "釣り・作詞作曲・DTM"};
console.log(VoiceActhor1.name + 'さんのデビュー作は「' + VoiceActhor.debut_title + '」です');
とすればいいです。