长期读者,第一次在这里作家。
我试图找出一组未确定的 javascript 数组的所有可能组合,但似乎找不到太多帮助。
因此,如果您可以想象下拉列表组(这是最终使用),其中可能存在用户定义的任意数量的下拉列表,并且每个下拉列表都有用户定义的任意数量的可能值。(每个选项一次只能选择一个值。)
所以举个例子...
var options = [
{
label:"Colors",
values:["red", "green", "blue", "etc"]
},
{
label:"Sizes",
values:["small", "medium", "large", "xl", "etc"]
},
{
label:"styles",
values:["t-shirt", "v-neck", "hoodie", "vest", "etc"]
}
//and any number of options, with any numbers of values
];
现在从那里我需要生成所有可能的结果,从每个选项中选择一个值(如果解决方案可以有一个可选的选项,那么也许有时它可以设置为生成所有可能的组合,包括如果只有一个值被选中)。
所以我希望有一个解决方案
function combinations(options, option_optional){
}
只有独特的组合,然后我可以建立一个像这样的列表
如果选项是可选的:
[
["red"],
["red", "large"],
["red", "large", "tshirt"],
["large"],
["large", "t-shirt"]
ETC...
或者如果必须选择所有选项:
[
["red", "large", "t-shirt"],
["red", "medium", "t-shirt"],
等等
我尝试查看其他解决方案,但只能找到能够返回所有可能组合的解决方案。
任何帮助表示赞赏,如果您更喜欢使用 jquery 的 $.each for 循环,那也很好。提前致谢!