13 points par xguru 2024-06-29 | 1 commentaires | Partager sur WhatsApp
  • Depuis Firefox 127, les nouvelles méthodes de Set sont disponibles dans la plupart des principaux moteurs de navigateurs, ce qui permet de les utiliser partout sans polyfill
  • Elles offrent des moyens optimisés pour la déduplication, la comparaison, l’intersection, la différence, les sous-ensembles, etc., ce qui évite de devoir les implémenter soi-même
  • Sur de gros volumes de données, elles peuvent offrir un avantage en performance par rapport aux Array (à condition de garder à l’esprit que l’ordre n’est pas garanti)
  • Nouvelles méthodes de Set : intersection(), union(), difference(), symmetricDifference(), isSubsetOf(), isSupersetOf(), isDisjointFrom() ; ces dernières renvoient une valeur booléenne indiquant l’état correspondant

Qu’est-ce que Set en JavaScript ?

  • Set ressemble à un Array, mais chaque valeur ne peut y être stockée qu’une seule fois
  • Set fournit un moyen intégré et pratique de créer des collections uniques
  • En général, vérifier la présence d’un élément est plus rapide dans un Set que dans un Array

L’union de deux ensembles

  • La méthode union permet d’identifier les éléments présents dans l’un ou l’autre, ou dans les deux
  • Il n’est plus nécessaire d’écrire une implémentation personnalisée pour supprimer les doublons et effectuer des comparaisons

L’intersection d’ensembles

  • La méthode intersection permet d’identifier les éléments communs à deux ensembles
  • Elle peut servir à mettre en évidence les éléments présents dans les deux ensembles uniquement

La différence symétrique entre ensembles

  • La méthode symmetricDifference permet d’identifier les éléments présents dans un seul des deux ensembles, mais pas dans les deux
  • symmetricDifference applique l’opération logique inverse de intersection

La différence entre ensembles

  • La méthode difference permet d’identifier les éléments présents dans un ensemble mais pas dans l’autre
  • On peut utiliser l’ensemble produit par difference pour mettre en évidence les éléments d’une liste qui n’apparaissent pas dans une autre

Sous-ensemble, surensemble et disjoints

  • Les méthodes isSubsetOf() et isSupersetOf() ne renvoient pas un nouvel ensemble, mais une valeur booléenne représentant un état précis ou une vérification logique
  • La méthode isDisjointFrom() permet de vérifier si deux ensembles n’ont aucun élément en commun

Résumé

  • Les méthodes de Set sont un concept intéressant et facile à comprendre
  • L’auteur aimerait connaître d’autres façons d’utiliser ces méthodes dans des exemples concrets
  • En espérant pouvoir bien exploiter les méthodes de Set dans votre prochain projet

1 commentaires

 
carnoxen 2024-06-29

On dirait qu’on a ajouté des fonctions encore plus « ensemblistes ».