Bonjour,
Je suis confronté à un bon problème de logique. J'ai un JSON que je veux utiliser pour créer un autre JSON. Je m'explique.
Voilà mon JSON:
On remarque qu'il y a 2 objets avec l'id 2. Je voudrai arriver à recréer une liste de ce type:
Code : Sélectionner tout - Visualiser dans une fenêtre à part var results = { rows: '[{"id":1,"name":"pierre"},{"id":2,"name":"paul"},{"id":2,"name":"jacques"}]' };
Et là j'ai un sacré prob de logique et de technique pour arriver à mes fins. Je suis sur nodejs. J'utilise "underscore" pour parcourir l'array 'rows':
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 { "1": { "id": 1, "persons": [ { "name": "pierre" } ] }, "2": { "id": 2, "persons": [ {"name": "paul"}, {"name": "jacques"} ] } }
Je suis preneur de votre grande expérience sur le sujet
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 var _ = require('underscore'); var results = { rows: '[{"id":1,"name":"pierre"},{"id":2,"name":"paul"},{"id":2,"name":"jacques"}]' }; var data = JSON.parse(results['rows']); console.dir(data); var array = []; _.each(data, function(item) { array[item.id] = item; }); console.dir(array);
Partager