


Comment calculer efficacement les différences entre les ensembles en JavaScript à l'aide de tableaux ?
Oct 21, 2024 pm 01:49 PMCalculs efficaces des différences d'ensembles à l'aide de tableaux JavaScript
Dans le domaine de la programmation JavaScript, calculer efficacement la différence d'ensemble entre deux tableaux est une tâche courante . Explorons quelques-unes des approches les plus efficaces et les plus élégantes :
Exploiter les fonctions natives
Une méthode simple consiste à utiliser les fonctions intégrées de JavaScript. La fonction filter() peut être utilisée pour conserver les éléments de l'ensemble A qui n'existent pas dans l'ensemble B. Cette approche offre une solution concise et lisible.
<code class="javascript">const A = [1, 2, 3, 4]; const B = [1, 3, 4, 7]; const diff = A.filter(x => B.indexOf(x) < 0); console.log(diff); // [2]
Exploiter les ensembles
Dans les cas où les éléments en double doivent être exclus, les ensembles constituent un outil précieux. JavaScript fournit l'objet Set, qui garantit des éléments uniques. En convertissant les tableaux en ensembles, la différence entre les ensembles peut être obtenue à l'aide de l'opérateur moins.
<code class="javascript">const setA = new Set([1, 2, 3, 4]); const setB = new Set([1, 3, 4, 7]); const diff = new Set([...setA].filter(x => !setB.has(x))); console.log(diff); // Set { 2 }</code>
Optimisation spécifique à Gecko
Pour les navigateurs basés sur Mozilla Gecko, tirer parti de la méthode optimisée Set.prototype.delete() peut encore améliorer les performances lors du calcul de la différence définie. En itérant sur l'ensemble B et en supprimant ses éléments de l'ensemble A, la différence peut être obtenue efficacement.
<code class="javascript">const setA = new Set([1, 2, 3, 4]); const setB = new Set([1, 3, 4, 7]); setB.forEach(x => setA.delete(x)); console.log(setA); // Set { 2 }</code>
Solutions de bibliothèque
Alors que les fonctions natives offrent une base solide , les bibliothèques légères peuvent fournir une optimisation et une utilité supplémentaires. La bibliothèque Underscore, par exemple, propose la fonction _.difference(), spécialisée dans le calcul des différences entre ensembles avec des options configurables.
<code class="javascript">const A = [1, 2, 3, 4]; const B = [1, 3, 4, 7]; const diff = _.difference(A, B); console.log(diff); // [2]</code>
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!

Article chaud

Outils chauds Tags

Article chaud

Tags d'article chaud

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

Sujets chauds

Remplacer les caractères de chaîne en javascript

Tutoriel de configuration de l'API de recherche Google personnalisé

8 Superbes plugins de mise en page JQuery Page

Créez vos propres applications Web Ajax

Qu'est-ce que & # x27; ceci & # x27; en javascript?
