キーで読み取り、JavaScriptでJSONとして解析します
このようなJSON配列があるとします-
const arr = [{ "data": [ { "W": 1, "A1": "123" }, { "W": 1, "A1": "456" }, { "W": 2, "A1": "4578" }, { "W": 2, "A1": "2423" }, { "W": 2, "A1": "2432" }, { "W": 2, "A1": "24324" } ] }];
そのような配列を1つ取り込んで、それを次のJSON配列に変換するJavaScript関数を作成する必要があります-
[ { "1": [ { "A1": "123" }, { "A1": "456" } ] }, { "2": [ { "A1": "4578" }, { "A1": "2423" }, { "A1": "2432" }, { "A1": "24324" } ] } ];
例
const arr = [{ "data": [ { "W": 1, "A1": "123" }, { "W": 1, "A1": "456" }, { "W": 2, "A1": "4578" }, { "W": 2, "A1": "2423" }, { "W": 2, "A1": "2432" }, { "W": 2, "A1": "24324" } ] }]; const groupJSON = (arr = []) => { const preCombined = arr[0].data.reduce((acc, val) => { acc[val.W] = acc[val.W] || []; acc[val.W].push({ A1: val.A1 }); return acc; }, {}); const combined = Object.keys(preCombined).reduce((acc, val) => { const temp = {}; temp[val] = preCombined[val]; acc.push(temp); return acc; }, []); return combined; }; console.log(JSON.stringify(groupJSON(arr), undefined, 4));
出力
そして、コンソールの出力は-
になります[ { "1": [ { "A1": "123" }, { "A1": "456" } ] }, { "2": [ { "A1": "4578" }, { "A1": "2423" }, { "A1": "2432" }, { "A1": "24324" } ] } ]
-
JavaScriptを使用してJSON配列からデータを読み取る方法は?
以下は、JavaScriptを使用してJSON配列からデータを読み取るためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style
-
JavaScriptでJSONを解析して、特定の名前と値のペアを表示しますか?
JSONを解析するには、parseJSON()を使用し、特定のペアを表示するには、$。each()関数を使用します。 以下が解析されるJSONであるとしましょう- const APIData = '[{"Name":"John","Age":21},{"Name":"David","Age":24},{"Name":"Bob","Age" :20}]'; const getObject = jQuer