JSFiddle - React, Tailwind, and code Playground
JavaScript
const generateSubsets = (inp) => {
if (!Array.isArray(inp)) {
return;
}
let subsets = [];
for (const val of inp) {
const tempSubsets = [...subsets];
for (const currSubset of tempSubsets) {
subsets.push([...currSubset, val]);
}
subsets.push([val]);
}
subsets.push([]);
return subsets;
};
console.log(generateSubsets([1, 2, 3]));