回答編集履歴

1

調整

2022/06/24 08:00

投稿

yambejp
yambejp

スコア114843

test CHANGED
@@ -1,25 +1,25 @@
1
1
  最終形がわからないのでなんともいえませんが好意的に解釈してこう
2
+ ※一部再帰処理を調整
2
3
  ```javascript
3
4
  <script>
4
5
  window.addEventListener('DOMContentLoaded',async()=>{
5
6
  const url="https://jsonplaceholder.typicode.com/users/1";
6
7
  const data=await fetch(url).then(res=>res.json());
8
+ function get_datas(data){
7
- let html="<ul>";
9
+ let html="<ul>";
8
- for(let i in data){
10
+ for(let i in data){
9
- let val="";
11
+ let val="";
10
- if(!(data[i] instanceof Object)){
12
+ if((data[i] instanceof Object)){
13
+ val=get_datas(data[i]);
14
+ }else{
11
- val=data[i];
15
+ val=data[i];
12
- }else{
13
- val+="<ul>";
14
- for(let j in data[i]){
15
- val+=`<li><dl><dt>${j}</dt>\n<dd>${data[i][j]}</dd></dl>\n</li>\n`;
16
16
  }
17
- val+="</ul>";
17
+ html+=`<li><dl><dt>${i}</dt>\n<dd>${val}</dd></dl>\n</li>\n`;
18
18
  }
19
- html+=`<li><dl><dt>${i}</dt>\n<dd>${val}</dd></dl>\n</li>\n`;
19
+ html+="</ul>";
20
+ return html;
20
21
  }
21
- html+="</ul>";
22
- root.innerHTML=html;
22
+ root.innerHTML=get_datas(data);
23
23
  });
24
24
 
25
25