Différence symétrique entre deux tableaux basée sur une fonction

Beginner

This tutorial is from open-source community. Access the source code

Introduction

Dans ce laboratoire, nous allons explorer comment trouver la différence symétrique entre deux tableaux en utilisant une fonction donnée avec JavaScript. Nous utiliserons les méthodes Array.prototype.filter() et Array.prototype.findIndex() pour comparer les éléments des deux tableaux et renvoyer les valeurs qui sont uniques à chaque tableau. À la fin de ce laboratoire, vous aurez une meilleure compréhension de la manière d'utiliser ces méthodes pour comparer et manipuler des tableaux en JavaScript.

Une fonction pour trouver la différence symétrique entre deux tableaux

Pour trouver la différence symétrique entre deux tableaux en utilisant une fonction donnée comme comparateur, suivez ces étapes :

  1. Ouvrez le Terminal/SSH et tapez node pour commencer à pratiquer la programmation.
  2. Utilisez les méthodes Array.prototype.filter() et Array.prototype.findIndex() pour trouver les valeurs appropriées.
  3. Utilisez le code donné pour effectuer l'opération.
const symmetricDifferenceWith = (arr, val, comp) => [
  ...arr.filter((a) => val.findIndex((b) => comp(a, b)) === -1),
  ...val.filter((a) => arr.findIndex((b) => comp(a, b)) === -1)
];

Par exemple, considérez l'entrée suivante :

symmetricDifferenceWith(
  [1, 1.2, 1.5, 3, 0],
  [1.9, 3, 0, 3.9],
  (a, b) => Math.round(a) === Math.round(b)
); // [1, 1.2, 3.9]

Le code ci-dessus renverra [1, 1.2, 3.9] comme différence symétrique entre les deux tableaux.

Sommaire

Félicitations ! Vous avez terminé le laboratoire sur la différence symétrique entre deux tableaux basée sur une fonction. Vous pouvez pratiquer d'autres laboratoires sur LabEx pour améliorer vos compétences.