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));
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));
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)));
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)); }
Utilisation :
[1, 2, 3].diff([2, 3]) // [1]
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!