JSFiddle - React, Tailwind, and code Playground
JavaScript
function getCombinations() {
var myArr = ['a','b'],
result = [];
var recurFn = function(prefix, myArr) {
for (var i = 0; i < myArr.length; i++) {
var newArray = prefix !== '' ? [prefix, myArr[i]] : [myArr[i]];
result.push(newArray);
recurFn(prefix + myArr[i], myArr.slice(i + 1));
}
}
recurFn('', myArr);
console.log(result); //[[a], [a,b], [b]]
}
getCombinations();