I have the following example data in javascript:
var variations = [
{group: 1, id: 1},
{group: 1, id: 2},
{group: 1, id: 3},
{group: 1, id: 4},
{group: 2, id: 5},
{group: 2, id: 6},
{group: 2, id: 7},
{group: 3, id: 8},
{group: 3, id: 9}
];
Let us say I already define the selection using the following variables:
var selected_variation_groups = [1,2,3];
var selected_variation_group_ids = [1,2,3,4,5,6,7,8,9];
When I try to find the selection number possibilities from above data, then I would have 24 posibilities:
=> 1, 5, 8
=> 1, 5, 9
=> 1, 6, 8
=> 1, 6, 9
=> 1, 7, 8
=> 1, 7, 9
=> 2, 5, 8
=> 2, 5, 9
=> 2, 6, 8
=> 2, 6, 9
=> 2, 7, 8
=> 2, 7, 9
=> 3, 5, 8
=> 3, 5, 9
=> 3, 6, 8
=> 3, 6, 9
=> 3, 7, 8
=> 3, 7, 9
=> 4, 5, 8
=> 4, 5, 9
=> 4, 6, 8
=> 4, 6, 9
=> 4, 7, 8
=> 4, 7, 9
Is there anyone who can help me to give the algorithm for this, or is there anyone who can help me provide javascript code to create those possibilities?
The groups and ids can be unlimited.
You are computing all permutations of selecting one item from each group.
It’s easier to code if you have all the groups arranged as an array, so all group 1’s data are in one array, group 2 in another and so on.
This function will add all permutations of the groups to an array, with values separated by commas.