回答編集履歴
1
調整
answer
CHANGED
@@ -1,16 +1,18 @@
|
|
1
1
|
仕様によっては調整が必要かもしれませんが
|
2
2
|
とりあえずこんな感じです
|
3
3
|
|
4
|
+
※items内の同じidのオブジェクトは除外するよう調整しました
|
4
5
|
```javascript
|
6
|
+
<script>
|
5
7
|
var itemList = [
|
6
|
-
{id: 'p1',items: [{id: 1},{id: 2},{id: 3}]},
|
8
|
+
{id: 'p1',items: [{id: 1},{id: 2},{id: 3},{id: 3}]},
|
7
9
|
{id: 'p2',items: [{id: 1},{id:10},{id:33}]},
|
8
10
|
{id: 'p3',items: [{id:11},{id:22},{id:33}]},
|
9
11
|
];
|
10
12
|
var orderList = [
|
11
13
|
{id:'1',products: ['p1']},
|
12
|
-
{id:'2',products: ['
|
14
|
+
{id:'2',products: ['p2']},
|
13
|
-
{id:'3',products: ['
|
15
|
+
{id:'3',products: ['p2']},
|
14
16
|
{id:'4',products: []},
|
15
17
|
];
|
16
18
|
|
@@ -28,6 +30,9 @@
|
|
28
30
|
Array.prototype.push.apply(items,i.items);
|
29
31
|
}
|
30
32
|
});
|
33
|
+
|
34
|
+
items=items.filter(function(i,j,k){
|
35
|
+
return k.map(function(x){return x.id;}).indexOf(i.id)==j;
|
36
|
+
});
|
31
37
|
console.log(items);
|
32
|
-
|
33
38
|
```
|