Comment réaliser l'union ou l'intersection sur un tableau de tableaux avec Underscore.js
J'ai un tableau de tableaux:
var selected = [[1, 4, 5, 6], [1, 2, 3, 5, 7], [1, 4, 5, 6], [1, 7]];
Underscore.js a pratique de l'union et l'intersection de méthodes, mais ils travaillent sur le passage de chaque tableau individuellement en tant qu'arguments.
Comment m'y prendre si le nombre de tableaux sur lequel l'ensemble des opérations à effectuer est arbitraire?
Cette question adresses quelque chose de similaire, mais c'est pour un tableau contenant des objets.
Vous devez vous connecter pour publier un commentaire.
On peut utiliser
apply
de transmettre un nombre arbitraire d'arguments de la méthode.De l'union:
Pour l'intersection:
pourquoi ne pas utiliser réduire ?
JS:
HTML:
var centrifugeuse = .écart(.intersection);
La façon la plus simple que j'ai pu trouver:
_.union(...arrays)
.Cela fonctionne dans les deux Underscore.js et dans Lodash.
Le seul inconvénient majeur est, je pense, qu'il utilise la matrice de propagation de la syntaxe, qui ne fonctionne pas dans Internet Explorer (sauf si vous utilisez un outil comme Babel à traduire).