JSON配列から要素の値を検索して取得する
JavaScript

JSON配列から要素の値を検索して取得する

下記のようなjsonから値を取り出す際の方法。

"japan": [{
      "code": 1,
      "name": "hokkaido",
       "ja": "北海道",
       "type": "region",
      },
    {
      "code": 2,
      "name": "tohoku",
      "ja": "東北",
      "type": "region",
    },
    {
      "code": 3,
      "name": "kanto",
      "ja": "関東",
      "type": "region",
     }
   ]
}


nameがkantoである先頭の要素を取得したい場合はfindを使用すると便利。

const kanto = json.japan.find((v) => v.name == "kanto");

console.log(kanto.ja) // 関東


typeがregionである要素を全て取得したい場合はfilterを使う

const regions = json.japan.filter(function(item, index){
  if (item.type == "region" ) return true;
});

console.log(regions) // [{},{}...] 配列で取得できる


~~ END ~~