J'ai besoin d'un guide : ce que je fais est de créer un nouveau tableau multidimensionnel d'objets à partir d'un tableau d'objets :
[
{number:111, connectedNumber: 112, ...},
{number:112, connectedNumber: 111, ...},
{number:113, connectedNumber: 114, ...},
{number:114, connectedNumber: 113, ...}
....
]
À la fin, je dois donc obtenir un nouveau tableau multidimensionnel contenant des groupes d'objets apparentés :
[
[{number:111, connectedNumber: 112, ...}, {number:112, connectedNumber: 111, ...}],
[{number:113, connectedNumber: 114, ...}, {number:114, connectedNumber: 113, ...}],
]
Comme vous pouvez le constater, ils sont liés à la number === connecetedNumber
.
Jusqu'à présent, ce que je fais, c'est de créer un nouveau tableau et de parcourir en boucle la liste originale d'objets et de vérifier si number === connecetedNumber
et ajoutés au nouveau tableau :
for (let j = count; numbers.length > j; j++) {
organizedNumber.push([numbers[j]]);
for (let k = j; numbers.length > k; k++) {
if (numbers[j].number === numbers[k].connectedNumber) {
organizedNumber[j].push(numbers[k]);
}
}
}
mais celui-ci renvoie un nouveau tableau dans ce format :
[
[{number:111, connectedNumber: 112, ...}, {number:112, connectedNumber: 111, ...}],
[{number:112, connectedNumber: 111, ...}],
[{number:113, connectedNumber: 114, ...}, {number:114, connectedNumber: 113, ...}],
[{number:114, connectedNumber: 113, ...}],
....
]
Comme vous pouvez le voir, la boucle passe sur chaque élément (comme prévu), et ajoute l'élément suivant qu'elle a déjà ajouté dans le tableau précédent.
Un guide, s'il vous plaît.