javascript 2階層あるjsonデータを1次元配列として出力する
- 作成日 2020.11.11
- 更新日 2022.07.19
- javascript
- javascript

javascriptで、2階層あるjsonデータを1次元配列として出力するサンプルコードを記述してます。
環境
- OS windows10 pro 64bit
- Apache 2.4.43
- ブラウザ chrome 103.0.5060.114
サンプル
jsonデータの値を取得して、文字列か数値であれば、そのまま配列化し、そうでなければ、
もう1階層ループさせてJSONデータを1次元配列化します。
const json = '{"hoge1":1,"hoge2":{"foo1":"bbb","foo2":"ccc","foo3":"ddd"},"hoge3":"eee"}';
const x = JSON.parse(json);
let arr = [];
for (let key in x) {
if ('' + x[key] === x[key] || 0 + x[key] === x[key]) { // 文字列(値)か数値であれば
arr.push([key, x[key]]);
} else {// 文字列か数値でなければ
for (let key2 in x[key]) {
if ('' + x[key][key2] == x[key][key2] || 0 + x[key][key2] == x[key][key2]) {
arr.push([key2, x[key][key2]]);
}
}
}
}
console.log(arr);
実行結果

-
前の記事
Rails renderメソッドを使用してjsonを返す 2020.11.11
-
次の記事
Weave Scopeを使ってdockerコンテナを管理する 2020.11.11
コメントを書く