質問編集履歴

5

軽微修正

2022/12/06 18:12

投稿

mmsan1110
mmsan1110

スコア2

test CHANGED
File without changes
test CHANGED
@@ -48,7 +48,7 @@
48
48
  hoge4.hoge5.map(hoge5 =>
49
49
  hoge5.hoge6.map(hoge6 =>
50
50
  hoge6.hoge7.map(hoge7 =>
51
- console.log(aaa.map(aaa =>aaa.idName).indexOf(hoge7.idName))
51
+ console.log(aaa.map(aaa =>aaa.idName1).indexOf(hoge7.idName))
52
52
 
53
53
  )
54
54
  )
@@ -57,13 +57,13 @@
57
57
 
58
58
  //欲しい結果
59
59
  var aaa =
60
- [{name : "aa",idName: 'aa01',Num : 1},
60
+ [{name : "aa",idName1: 'aa01',Num : 1},
61
- {name : "bb",idName: 'aa17',Num :''},//一致しない場合はなし
61
+ {name : "bb",idName1: 'aa17',Num :''},//一致しない場合はなし
62
- {name : "cc",idName: 'aa08a',Num : 8},
62
+ {name : "cc",idName1: 'aa08a',Num : 8},
63
- {name : "dd",idName: 'aa01',Num : 1},
63
+ {name : "dd",idName1: 'aa01',Num : 1},
64
- {name : "ee",idName: 'aa02',Num : 2},
64
+ {name : "ee",idName1: 'aa02',Num : 2},
65
- {name : "ff",idName: 'aa05',Num : 5},
65
+ {name : "ff",idName1: 'aa05',Num : 5},
66
- {name : "gg",idName: 'aa09',Num : 9}];
66
+ {name : "gg",idName1: 'aa09',Num : 9}];
67
67
  ```
68
68
 
69
69
  map関数で深層のhoge7を一つ一つ拾い上げることはできたのでhoge7.map上に

4

軽微修正

2022/12/06 18:11

投稿

mmsan1110
mmsan1110

スコア2

test CHANGED
File without changes
test CHANGED
@@ -13,13 +13,13 @@
13
13
  ```ここに言語を入力
14
14
  //idをidNameへ変更
15
15
  var aaa =
16
- [{name : "aa",idName: 'aa01' },
16
+ [{name : "aa",idName1: 'aa01' },
17
- {name : "bb",idName: 'aa17'},
17
+ {name : "bb",idName1: 'aa17'},
18
- {name : "cc",idName: 'aa08a'},
18
+ {name : "cc",idName1: 'aa08a'},
19
- {name : "dd",idName: 'aa01' },
19
+ {name : "dd",idName1: 'aa01' },
20
- {name : "ee",idName: 'aa02' },
20
+ {name : "ee",idName1: 'aa02' },
21
- {name : "ff",idName: 'aa05' },
21
+ {name : "ff",idName1: 'aa05' },
22
- {name : "gg",idName: 'aa09' }];
22
+ {name : "gg",idName1: 'aa09' }];
23
23
 
24
24
  //idをidNameへ変更,strをNumへ変更,code追加
25
25
  var bbb =

3

試したことを詳しく追記しました。

2022/12/06 17:00

投稿

mmsan1110
mmsan1110

スコア2

test CHANGED
File without changes
test CHANGED
@@ -66,10 +66,10 @@
66
66
  {name : "gg",idName: 'aa09',Num : 9}];
67
67
  ```
68
68
 
69
+ map関数で深層のhoge7を一つ一つ拾い上げることはできたのでhoge7.map上に
70
+ aaaのmap関数を記載しIndexOfで検索をすることができると考えていたのですが、
71
+ どうしても、bbbが基準となってしまいます。
72
+ aaa.mapとbbb.mapを個々で書きindexOfで比較できればなと調べたのですが、それも分からずじまいでした。
73
+ このような、複雑な配列はmap等を使わずにhoge7内を一つ一つ拾い上げることは可能なのでしょうか。
74
+ ご教示頂けると幸いです。
69
75
 
70
-
71
- ### 補足情報
72
-
73
- いろいろパターンはやってみましたがうまく動いてくれないので、
74
- 教えていただければ幸いです。
75
-

2

mapコード追加

2022/12/06 16:01

投稿

mmsan1110
mmsan1110

スコア2

test CHANGED
File without changes
test CHANGED
@@ -43,6 +43,17 @@
43
43
  {hoge6 : [{hoge7: [{idName: 'aa11' ,code:0,Num : 11}]},
44
44
  {hoge7: [{idName: 'aa012' ,code:0,Num : 12}]}]}]}]}}}};
45
45
 
46
+ //mapで試しconsole.logで確認したが思った結果とならなかった。
47
+ bbb.hoge01.hoge02.hoge3.hoge4.map(hoge4 =>
48
+ hoge4.hoge5.map(hoge5 =>
49
+ hoge5.hoge6.map(hoge6 =>
50
+ hoge6.hoge7.map(hoge7 =>
51
+ console.log(aaa.map(aaa =>aaa.idName).indexOf(hoge7.idName))
52
+
53
+ )
54
+ )
55
+ )
56
+ );
46
57
 
47
58
  //欲しい結果
48
59
  var aaa =

1

実際に近い配列に修正

2022/12/06 15:43

投稿

mmsan1110
mmsan1110

スコア2

test CHANGED
File without changes
test CHANGED
@@ -10,61 +10,50 @@
10
10
 
11
11
  ### 試したこと
12
12
 
13
+ ```ここに言語を入力
14
+ //idをidNameへ変更
13
15
  var aaa =
14
- [{name : "aa",id : 8 },
16
+ [{name : "aa",idName: 'aa01' },
15
- {name : "bb",id : 4 },
17
+ {name : "bb",idName: 'aa17'},
16
- {name : "cc",id : 3 },
18
+ {name : "cc",idName: 'aa08a'},
17
- {name : "dd",id : 12 },
19
+ {name : "dd",idName: 'aa01' },
18
- {name : "ee",id : 5 },
20
+ {name : "ee",idName: 'aa02' },
19
- {name : "ff",id : 6 },
21
+ {name : "ff",idName: 'aa05' },
20
- {name : "gg",id : 5 }];
22
+ {name : "gg",idName: 'aa09' }];
21
23
 
22
-
24
+ //idをidNameへ変更,strをNumへ変更,code追加
23
25
  var bbb =
24
26
  {hoge01 : {
25
27
  hoge02 : {
26
28
  hoge3 : {
27
29
  hoge4 : [
28
30
  {hoge5 : [
29
- {hoge6: [{hoge7: [{id: 1 ,str : "a1"}]}]},
31
+ {hoge6: [{hoge7: [{idName: 'aa01' ,code:0,Num : 1}]}]},
30
- {hoge6: [{hoge7: [{id: 2 ,str :"a2"}]},
32
+ {hoge6: [{hoge7: [{idName: 'aa02' ,code:0,Num : 2}]},
31
- {hoge7: [{id: 3 ,str :"a3" }]}]}],},
33
+ {hoge7: [{idName: 'aa03' ,code:0,Num : 3}]}]}],},
32
34
  {hoge5 : [
33
- {hoge6 : [{hoge7: [{id : 4 ,str :"a4" }]},
35
+ {hoge6 : [{hoge7: [{idName: 'aa04' ,code:0,Num : 4}]},
34
- {hoge7: [{id : 5 ,str :"a5" }}]},
36
+ {hoge7: [{idName: 'aa05' ,code:0,Num : 5}]},
35
- {hoge7: [{id : 6 ,str :"a6" }]},
37
+ {hoge7: [{idName: 'aa06' ,code:0,Num : 6}]},
36
- {hoge7: [{id : 7 ,str :"a7" }]},
38
+ {hoge7: [{idName: 'aa07' ,code:0,Num : 7}]},
37
- {hoge7: [{id : 8 ,str :"a8" }]},
39
+ {hoge7: [{idName: 'aa08' ,code:0,Num : 8}]},
38
- {hoge7: [{id : 9 ,str :"a9" }]},
40
+ {hoge7: [{idName: 'aa09' ,code:0,Num : 9}]},
39
- {hoge7: [{id : 10 ,str :"a10" }]}]}]},
41
+ {hoge7: [{idName: 'aa10' ,code:0,Num : 10}]}]}]},
40
42
  {hoge5 : [
41
- {hoge6 : [{hoge7: [{id : 11 ,str :"a11" }]},
43
+ {hoge6 : [{hoge7: [{idName: 'aa11' ,code:0,Num : 11}]},
42
- {hoge7: [{id : 12 ,str :"a12" }]}]}]}]}}}};
44
+ {hoge7: [{idName: 'aa012' ,code:0,Num : 12}]}]}]}]}}}};
43
-
44
- //aaa.idを基準にbbbと一致しているidを取得
45
- bbb.hoge01.hoge02.hoge3.hoge4.map(hoge4 =>
46
- hoge4.hoge5.map(hoge5 =>
47
- hoge5.hoge6.map(hoge6 =>
48
- hoge6.hoge7.map(hoge7 =>
49
- console.log(aaa.map(aaa =>aaa.id).indexOf(hoge7.id))
50
- //console.logで確認してもaaa基準ではない
51
- )
52
- )
53
- )
54
- );
55
-
56
45
 
57
46
 
58
47
  //欲しい結果
59
- aaa =
48
+ var aaa =
60
- [{name : "aa",id : 8, str :"a8" },
49
+ [{name : "aa",idName: 'aa01',Num : 1},
61
- {name : "bb",id : 4, str :"a4" },
62
- {name : "cc",id : 3 ,str :"a3"},
63
- {name : "dd",id : 12, str : },//一致しない場合は
50
+ {name : "bb",idName: 'aa17',Num :''},//一致しない場合は
51
+ {name : "cc",idName: 'aa08a',Num : 8},
52
+ {name : "dd",idName: 'aa01',Num : 1},
64
- {name : "ee",id : 5, str :"a5" },
53
+ {name : "ee",idName: 'aa02',Num : 2},
65
- {name : "ff",id : 6, str :"a6" },
54
+ {name : "ff",idName: 'aa05',Num : 5},
66
- {name : "gg",id : 5, str :"a5" }];
55
+ {name : "gg",idName: 'aa09',Num : 9}];
67
-
56
+ ```
68
57
 
69
58
 
70
59