JavaScriptでJSON配列からすべてのcustomerNameの値を取得する方法
JSON配列の準備
例として、次のようなJSON配列を想定します。各要素には「customerDetails」という配列が含まれており、その中に顧客名(customerName)と国名(customerCountryName)が格納されています。
var details = [
{
"customerDetails": [
{
"customerName": "John Smith",
"customerCountryName": "US"
}
]
},
{
"customerDetails": [
{
"customerName": "David Miller",
"customerCountryName": "AUS"
}
]
},
{
"customerDetails": [
{
"customerName": "Bob Taylor",
"customerCountryName": "UK"
}
]
}
]map()メソッドでcustomerNameだけを抽出する
customerNameの値だけを取り出したい場合は、配列のmap()メソッドを使用します。map()は配列の各要素に対してコールバック関数を実行し、その戻り値から新しい配列を生成します。今回のデータはネストされた構造になっているため、obj.customerDetails[0].customerNameのようにアクセスするのがポイントです。
コード例
var details = [
{
"customerDetails": [
{
"customerName": "John Smith",
"customerCountryName": "US"
}
]
},
{
"customerDetails": [
{
"customerName": "David Miller",
"customerCountryName": "AUS"
}
]
},
{
"customerDetails": [
{
"customerName": "Bob Taylor",
"customerCountryName": "UK"
}
]
}
]
var allCustomerName = details.map(obj =>
obj.customerDetails[0].customerName);
console.log(allCustomerName);プログラムの実行方法
上記のプログラムを実行するには、Node.js環境で次のコマンドを使用します。ここでは、コードを「demo206.js」というファイル名で保存したものとします。
node demo206.js
実行結果
PS C:\Users\Amit\javascript-code> node demo206.js [ 'John Smith', 'David Miller', 'Bob Taylor' ]
このように、map()メソッドを使えば、ネストされたJSON配列から特定のプロパティの値だけを簡潔に抽出できます。取得結果は配列として返されるため、その後のフィルタリングや画面表示などの処理にもそのまま活用できます。
-
JavaScriptでJSON配列からデータを読み取る方法をサンプルコード付きで解説
Web開発では、APIから取得したJSONデータを処理する場面が非常によくあります。本記事では、JavaScriptを使ってJSON配列からデータを読み取り、画面に表示する方法を、実際に動作するサンプルコードとともにわかりやすく解説します。 JSON配列からデータを読み取る基本の流れ JSON形式の文字列をJavaScriptで扱うには、まずJSON.parse()メソッドで文字列をJavaScriptのオブジェクト(配列)に変換します。変換後は、forEach()メソッドなどを活用して、配列の各要素に格納された値へ簡単にアクセスできます。 サンプルコード <!DOCTYPE htm
-
複数の値でJavaScript配列の要素を検索する方法
JavaScriptである配列(arr)が、別の配列(arr1)の複数の値・すべての要素を含んでいるかどうかを確認したい場面はよくあります。そんなときは、every()メソッドとincludes()メソッドを組み合わせることで、シンプルに判定できます。以下はそのサンプルコードです。 コード例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content=