Obtenir les combinaisons d'une liste d'éléments avec JavaScript
Concept et utilisation
La fonction arrayCombinations()
permet d'obtenir une liste de toutes les combinaisons d'une liste d'éléments.
Fonction
arrayCombinations()
Retourne une liste de combinaisons à partir des éléments d'une liste de référence.
- Syntaxe
arrayCombinations(liste);
- Paramètre
liste
(Array)Le paramètre
liste
de la fonctionarrayCombinations()
définit la liste des éléments à partir desquels obtenir les combinaisons.
Exemple d'obtention des combinaisons d'une liste d'éléments
var liste = ['a', 'b', 'c'];
arrayCombinations(liste);
// renvoie : [
// ['a'],
// ['a', 'b'],
// ['a', 'b', 'c'],
// ['a', 'c'],
// ['b'],
// ['b', 'c'],
// ['c']
// ]
Code source de la fonction
function arrayCombinations(a) {
var r = [],
f = function (b, a) {
for (var i = 0, j = a.length; i < j; i++) {
var x = b.concat(a[i]);
r.push(x);
f(x, a.slice(i + 1));
}
};
f([], a);
return r;
}
Dernière mise à jour le .