Table des matières
Élément de tableau JavaScript Fusion: fusion des éléments avec le même ID dans un seul objet
Maison interface Web js tutoriel Comment fusionner les éléments du tableau avec le même ID dans un seul objet en utilisant JavaScript?

Comment fusionner les éléments du tableau avec le même ID dans un seul objet en utilisant JavaScript?

Apr 04, 2025 pm 05:09 PM
switch red

Comment fusionner les éléments du tableau avec le même ID dans un seul objet en utilisant JavaScript?

Élément de tableau JavaScript Fusion: fusion des éléments avec le même ID dans un seul objet

Dans le traitement des données, il est souvent nécessaire de fusionner des éléments de tableau avec le même ID dans un seul objet. Cet article fournit une solution JavaScript pour convertir des éléments de tableau avec le même ID mais différents attributs en un nouveau format de tableau.

Format de données d'origine:

 const list = [
    {id: "202301", Jine: 23, type: "dîner"},
    {id: "202301", Jine: 87.5, Type: "Breakfast"},
    {id: "202301", Jine: 1065.5, type: "nourriture chinoise"},
    {id: "202302", jine: 10, type: "dîner"},
    {id: "202302", Jine: 181,5, type: "petit-déjeuner"},
    {id: "202302", Jine: 633.5, type: "nourriture chinoise"}
]]

Format de données cible:

 const cibleList = [
    {id: "202301", Jine1: 87.5, Jine2: 1065.5, Jine3: 23},
    {id: "202302", Jine1: 181.5, Jine2: 633.5, Jine3: 10}
]]

Solution:

Nous utiliserons la méthode reduce pour implémenter la conversion de données. Cette méthode itère sur le tableau et accumule chaque élément dans un objet résultat.

 const result = object.values ​​(list.reduce ((acc, curr) => {
    const {id, jine, type} = curr;
    if (! ACC [id]) {
        Acc [id] = {id};
    }
    commutateur (type) {
        Case «petit-déjeuner»: acc [id] .jine1 = jine; casser;
        Cas «nourriture chinoise»: acc [id] .jine2 = jine; casser;
        Case «dîner»: acc [id] .jine3 = jine; casser;
    }
    Retour ACC;
}, {}));

console.log (résultat); // Format de données cible de sortie

Explication du code:

  1. reduce la méthode: la méthode reduce itère sur list et accumule chaque élément dans un objet acc .
  2. acc[id] : Utilisez id comme clé pour stocker les données dans acc . Si id n'existe pas, un nouvel objet est créé.
  3. Instruction switch : attribuez la valeur jine à jine1 , jine2 ou jine3 en fonction de la valeur de type .
  4. Object.values : Enfin, utilisez la méthode Object.values ​​pour convertir l'objet acc en un tableau pour obtenir le format de données cible.

Cette méthode est claire et concise, en évitant l'utilisation de bibliothèques externes, et en utilisant directement des méthodes intégrées JavaScript pour implémenter la conversion de données. Il est également plus facile à évoluer, si vous devez faire face à plus de types de restaurants, ajoutez simplement plus case dans l'instruction switch .

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Stock Market GPT

Stock Market GPT

Recherche d'investissement basée sur l'IA pour des décisions plus intelligentes

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

PHP appelle AI Intelligent Voice Assistant Assistant PHP Interaction System Construction PHP appelle AI Intelligent Voice Assistant Assistant PHP Interaction System Construction Jul 25, 2025 pm 08:45 PM

L'entrée vocale de l'utilisateur est capturée et envoyée au backend PHP via l'API MediaRecorder du JavaScript frontal; 2. PHP enregistre l'audio en tant que fichier temporaire et appelle STTAPI (tel que Google ou Baidu Voice Recognition) pour le convertir en texte; 3. PHP envoie le texte à un service d'IA (comme Openaigpt) pour obtenir une réponse intelligente; 4. PHP appelle ensuite TTSAPI (comme Baidu ou Google Voice Synthesis) pour convertir la réponse en fichier vocal; 5. PHP diffuse le fichier vocal vers l'avant pour jouer, terminant l'interaction. L'ensemble du processus est dominé par PHP pour assurer une connexion transparente entre toutes les liens.

Comment utiliser PHP combiné avec l'IA pour obtenir la correction de texte de la syntaxe PHP détection et l'optimisation Comment utiliser PHP combiné avec l'IA pour obtenir la correction de texte de la syntaxe PHP détection et l'optimisation Jul 25, 2025 pm 08:57 PM

Pour réaliser la correction d'erreur de texte et l'optimisation de la syntaxe avec l'IA, vous devez suivre les étapes suivantes: 1. Sélectionnez un modèle ou une API d'IA appropriée, tels que Baidu, Tencent API ou bibliothèque NLP open source; 2. Appelez l'API via Curl ou Guzzle de PHP et traitez les résultats de retour; 3. Afficher les informations de correction d'erreur dans l'application et permettre aux utilisateurs de choisir d'adopter l'adoption; 4. Utilisez PHP-L et PHP_CODESNIFFER pour la détection de syntaxe et l'optimisation du code; 5. Collectez en continu les commentaires et mettez à jour le modèle ou les règles pour améliorer l'effet. Lorsque vous choisissez AIAPI, concentrez-vous sur l'évaluation de la précision, de la vitesse de réponse, du prix et du support pour PHP. L'optimisation du code doit suivre les spécifications du PSR, utiliser le cache raisonnablement, éviter les requêtes circulaires, revoir le code régulièrement et utiliser x

PHP réalise la gestion des stocks de produits de base et la monétisation de la synchronisation et du mécanisme d'alarme de l'inventaire PHP PHP réalise la gestion des stocks de produits de base et la monétisation de la synchronisation et du mécanisme d'alarme de l'inventaire PHP Jul 25, 2025 pm 08:30 PM

PHP assure l'atomicité de la déduction des stocks via les transactions de base de données et les verrous en ligne de Forupdate pour empêcher la survente élevée élevée en simultation; 2. La cohérence de l'inventaire multiplateforme dépend de la gestion centralisée et de la synchronisation axée sur les événements, combinant des notifications API / WebHook et des files d'attente de messages pour assurer une transmission fiable de données; 3. Le mécanisme d'alarme doit définir un faible inventaire, un inventaire zéro / négatif, des ventes invidables, des cycles de réapprovisionnement et des stratégies de fluctuations anormales dans différents scénarios, et sélectionner Dingtalk, SMS ou les personnes responsables par e-mail en fonction de l'urgence, et les informations d'alarme doivent être complètes et claires pour réaliser l'adaptation et la réponse rapide.

PHP Integrated AI Vorthing Reconnaissance et traducteur PHP Rendre Record Generation Solution de génération automatique PHP Integrated AI Vorthing Reconnaissance et traducteur PHP Rendre Record Generation Solution de génération automatique Jul 25, 2025 pm 07:06 PM

Sélectionnez le service de reconnaissance vocale AI approprié et intégrez PHPSDK; 2. Utilisez PHP pour appeler FFMPEG pour convertir les enregistrements en formats requis API (tels que WAV); 3. Téléchargez des fichiers sur le stockage cloud et appelez API Asynchronous Recognition; 4. Analyser les résultats JSON et organiser du texte à l'aide de la technologie NLP; 5. Générez des documents Word ou Markdown pour terminer l'automatisation des enregistrements de la réunion. L'ensemble du processus doit assurer le chiffrement des données, le contrôle d'accès et la conformité pour garantir la confidentialité et la sécurité.

Erreur de redéfinition de la fonction PHP Array_Column: compatibilité et pratique moderne Erreur de redéfinition de la fonction PHP Array_Column: compatibilité et pratique moderne Jul 25, 2025 pm 08:06 PM

Cet article vise à résoudre l'erreur de redéfinition de la fonction NodEcLareArray_Column () commune dans le développement de PHP. Cette erreur se produit généralement lorsque vous essayez de personnaliser la fonction Array_Column, qui est déjà intégrée dans les versions plus récentes de PHP. L'article expliquera en détail comment implémenter en toute sécurité l'ancienne version de la solution de polyfill via condition de jugement conditionnel_exists (), ainsi que les meilleures pratiques pour supprimer directement les fonctions personnalisées redondantes dans un environnement PHP moderne pour assurer la robustesse et la maintenabilité du code.

PHP Développement de l'utilisateur Gestion de la permission monétisation Contrôle de l'autorisation PHP et gestion des rôles PHP Développement de l'utilisateur Gestion de la permission monétisation Contrôle de l'autorisation PHP et gestion des rôles Jul 25, 2025 pm 06:51 PM

La gestion de la permission des utilisateurs est le mécanisme central pour réaliser la monétisation des produits dans le développement de PHP. Il sépare les utilisateurs, les rôles et les autorisations via un modèle de contrôle d'accès basé sur les rôles (RBAC) pour obtenir une allocation et une gestion d'autorisation flexibles. Les étapes spécifiques incluent: 1. Concevoir trois tables d'utilisateurs, rôles et autorisations et deux tables intermédiaires de user_roles et de role_permissions; 2. Implémentez les méthodes de vérification de l'autorisation dans le code telles que $ user-> can ('edit_post'); 3. Utilisez du cache pour améliorer les performances; 4. Utiliser le contrôle de l'autorisation pour réaliser la superposition des fonctions du produit et les services différenciés, soutenant ainsi le système d'adhésion et les stratégies de tarification; 5. Évitez la permission que la granularité est trop grossière ou trop fine, et utilisez "l'investissement"

Twilio Call Keeping and Recovery: Mode Mode avec un traitement indépendant des jambes d'appel Twilio Call Keeping and Recovery: Mode Mode avec un traitement indépendant des jambes d'appel Jul 25, 2025 pm 08:42 PM

Cet article élabore sur deux méthodes principales pour réaliser Call Hold et Unbanding in Twilio. L'option préférée est de tirer parti de la fonctionnalité de conférence de Twilio pour activer facilement la rétention et la récupération des appels en mettant à jour les ressources des participants de la conférence et pour personnaliser la rétention musicale. Une autre approche consiste à traiter les jambes d'appel indépendantes, qui nécessitent une logique Twiml plus complexe, passée et arrivée la gestion, mais qui est plus lourde que le mode de réunion. L'article fournit des exemples de code spécifiques et des étapes de fonctionnement pour aider les développeurs à implémenter efficacement le contrôle des appels Twilio.

Comment créer un système de gestion de journaux avec PHP PHP PHP Log Collection and Analysis Tool Comment créer un système de gestion de journaux avec PHP PHP PHP Log Collection and Analysis Tool Jul 25, 2025 pm 08:48 PM

Sélectionnez la méthode de journalisation: au stade précoce, vous pouvez utiliser l'erreur intégrée_log () pour PHP. Une fois le projet élargi, assurez-vous de passer à des bibliothèques matures telles que Monolog, prendre en charge plusieurs gestionnaires et niveaux de journal et assurez-vous que le journal contient des horodatages, des niveaux, des numéros de ligne de fichiers et des détails d'erreur; 2. Structure de stockage de conception: une petite quantité de journaux peut être stockée dans des fichiers, et s'il existe un grand nombre de journaux, sélectionnez une base de données s'il existe un grand nombre d'analyses. Utilisez MySQL / PostgreSQL sur des données structurées. Elasticsearch Kibana est recommandé pour semi-structuré / non structuré. Dans le même temps, il est formulé pour les stratégies de sauvegarde et de nettoyage régulières; 3. Interface de développement et d'analyse: il devrait avoir des fonctions de recherche, de filtrage, d'agrégation et de visualisation. Il peut être directement intégré à Kibana ou utiliser la bibliothèque du graphique Framework PHP pour développer l'auto-développement, en se concentrant sur la simplicité et la facilité d'interface.

See all articles