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();