JavaScript - Supprime les doublons d'un tableau et renvoie un tableau contenant les doublons et un autre tableau contenant tous les autres éléments
P粉986937457
P粉986937457 2023-08-17 22:28:55
0
1
420

Je souhaite exécuter un filtre ou réduire une opération sur un tableau et supprimer tous les doublons du tableau en fonction de l'attribut 'name', comme dans cet exemple. Les exemples que j'ai vus parcourent le tableau et conservent l'un des doublons, mais dans mon cas, je dois les séparer et renvoyer les doublons à l'utilisateur dans un tableau pour corriger les données et traiter les autres éléments restants. J'ai donné ci-dessous un exemple de tableau et un tableau de résultats attendus. Si quelqu'un pouvait me donner un exemple de la façon de procéder, je lui en serais très reconnaissant ! Merci!

const clients = [ { id:1, nom : "Jean", adresse="123 rue"}, { id:2, nom : "Alex", adresse="456 rue"}, { id:3, nom : "John", adresse="674 rue"}, { id:4, nom : "Stacy", adresse="534 rue"}, { id :5, nom : "Blair", adresse="634 rue"} ];≪/pré> 

Cela me donnera les deux tableaux suivants :

[ { id:1, nom : "John", adresse="123 rue"},, { id:3, nom : "John", adresse="674 rue"}, ] et [ { id:2, nom : "Alex", adresse="456 rue"}, { id:4, nom : "Stacy", adresse="534 rue"}, { id :5, nom : "Blair", adresse="634 rue"} ]≪/pré> 


P粉986937457
P粉986937457

répondre à tous (1)
P粉322319601

Essayez-le

const customers = [ { id: 1, name: "John", address: "123 street" }, { id: 2, name: "Alex", address: "456 street" }, { id: 3, name: "John", address: "674 street" }, { id: 4, name: "Stacy", address: "534 street" }, { id: 5, name: "Blair", address: "634 street" } ]; const nameMap = new Map(); const nonUniqueCustomers = []; const uniqueCustomers=[]; customers.forEach(customer => { if (!nameMap.has(customer.name)) { nameMap.set(customer.name, []); } nameMap.get(customer.name).push(customer); }); nameMap.forEach(customers => { if (customers.length > 1) { nonUniqueCustomers.push(...customers); }else{ uniqueCustomers.push(...customers) } }); console.log("非唯一顾客:", nonUniqueCustomers); console.log("唯一顾客:", uniqueCustomers);
    Derniers téléchargements
    Plus>
    effets Web
    Code source du site Web
    Matériel du site Web
    Modèle frontal
    À propos de nous Clause de non-responsabilité Sitemap
    Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!