Maison > interface Web > js tutoriel > Comment trouver la différence entre deux tableaux en JavaScript ?

Comment trouver la différence entre deux tableaux en JavaScript ?

Patricia Arquette
Libérer: 2024-12-18 18:21:13
original
588 Les gens l'ont consulté

How to Find the Difference Between Two Arrays in JavaScript?

Trouver la différence entre les tableaux en JavaScript

Comparer et manipuler des tableaux est une tâche courante en programmation. En JavaScript, une opération utile est la possibilité de déterminer la différence entre deux tableaux.

Utilisation d'Array.prototype.includes()

Array.prototype.includes() est un outil puissant introduit dans ES2016 (ES7) qui vous permet de vérifier si une valeur existe dans un tableau. En utilisant cette méthode, vous pouvez filtrer les éléments d'un tableau qui sont présents dans un autre.

Détermination de l'intersection

L'intersection de deux tableaux est constituée d'éléments communs aux deux. Pour obtenir l'intersection, utilisez le code suivant :

let intersection = arr1.filter(x => arr2.includes(x));
Copier après la connexion

Calcul de la différence

La différence entre deux tableaux (valeurs présentes dans un tableau mais pas dans l'autre) peut être calculé à l'aide du code suivant :

let difference = arr1.filter(x => !arr2.includes(x));
Copier après la connexion

Détermination de la symétrie Différence

La différence symétrique inclut des éléments qui sont uniques à l'un ou l'autre tableau, mais pas aux deux. Il peut être calculé à l'aide du code suivant :

let symDifference = arr1.filter(x => !arr2.includes(x))
                        .concat(arr2.filter(x => !arr1.includes(x)));
Copier après la connexion

Méthode de prototype de tableau personnalisé

Comme alternative, vous pouvez étendre le prototype de tableau pour ajouter un diff() méthode qui effectue l'opération de différence :

Array.prototype.diff = function(arr2) {
  return this.filter(x => !arr2.includes(x));
}
Copier après la connexion

Utilisation :

[1, 2, 3].diff([2, 3]) // [1]
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal