連想配列から特定のキーが指定した値に合致した配列のみ取得する方法です。
また、重複しない要素(例えばID等)の場合、結果は0か1のはずです。
そのため、最初一件のみ変数に代入する方法についてまとめます。
元データ
[ { "id": 1, "name": "name_1" }, { "id": 2, "name": "name_2" }, { "id": 3, "name": "name_3" } ]
パース処理
変数arrays
に、jsonデータを入れた状態とします。
theaterID = 1 // 探すID target = arrays.filter(function(object) { // idが「1」の配列のみ返します。 return object.id == theaterID }).shift() console.log(target) // // Object // id: 1, // name: "name_1" // console.log(target.name) // name_1
関連URL
filter
filter内で指定した無名関数が有効であればpushします。
shift
配列の最初の要素だけ抜き出します。
array[0]
と同じ事をしていますが、メソッドチェーンで書けるのがメリットです。
以上です。
連想配列を扱う時、for
文で回すより直感的にわかりやすいので、覚えておくと処理を書く時に何かと便利な方法です。