Maison > interface Web > js tutoriel > Comment combiner des tableaux basés sur des éléments uniques en JavaScript ?

Comment combiner des tableaux basés sur des éléments uniques en JavaScript ?

DDD
Libérer: 2024-10-29 02:23:02
original
282 Les gens l'ont consulté

How to Combine Arrays Based on Unique Items in JavaScript?

Combinaison de tableaux par éléments uniques en JavaScript

En JavaScript, vous pouvez combiner des tableaux basés sur des éléments uniques en utilisant une combinaison de propriétés d'objet et de boucle fonctions.

Solution :

Commencez par créer un tableau vide newCells pour stocker les résultats combinés. Parcourez ensuite chaque élément du tableau d'origine :

<code class="js">for (var i = 0; i < totalCells.length; i++) {
    var lineNumber = totalCells[i].lineNumber;
    // Check if an object for the current line number already exists in newCells
    if (!newCells[lineNumber]) {
        // Create a new object with the line number and an empty array to store cell widths
        newCells[lineNumber] = {
            lineNumber: lineNumber,
            cellWidth: []
        };
    }
    // Add the current cellWidth to the array in the new object
    newCells[lineNumber].cellWidth.push(totalCells[i].cellWidth);
}</code>
Copier après la connexion

Ce code parcourra le tableau totalCells et vérifiera si un objet avec le numéro de ligne actuel existe déjà dans newCells. Sinon, il crée un nouvel objet avec le numéro de ligne et initialise un tableau cellWidth vide. Ensuite, il pousse la largeur de cellule actuelle dans le tableau cellWidth.

Le tableau newCells résultant contiendra des objets avec des propriétés lineNumber uniques et des tableaux de valeurs cellWidth combinées en fonction des numéros de ligne.

Exemple de résultat :

Application de la solution ci-dessus à l'exemple d'entrée fourni :

<code class="js">totalCells = [
    { cellwidth: 15.552999999999999, lineNumber: 1 },
    { cellwidth: 14, lineNumber: 2 },
    { cellwidth: 14.552999999999999, lineNumber: 2 },
    { cellwidth: 14, lineNumber: 1 }
];

// Code to combine arrays based on unique line numbers
// ...

// Output
console.log(newCells);</code>
Copier après la connexion

Sortie :

<code class="js">[
    {
        lineNumber: 1,
        cellWidth: [15.552999999999999, 14],
    },
    {
        lineNumber: 2,
        cellWidth: [14, 14.552999999999999],
    },
]</code>
Copier après la connexion

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!

source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal