SOURCE

var input = '1 2 3'
var nums = input.split(' ')
var result = []
var len = nums.length
function setList(n,len){
    let temp = []
    let num = n
    if(n==0)return new Array(len).fill(0)
    while(n!=1){
        temp.push(n%2)
        n = (n-n%2)/2
    }
    temp.push(n)
    for(let i = 0;i<len-temp.length+1;i++){
        temp.push(0)
    }
    return temp
}
var k = 0
while(k<Math.pow(2,len)){
    let o = setList(k,len)
    let tp = []
    for(key in nums){
        if(o[key]==1){
            tp.push(nums[key])
        }
    }
    result.push(tp)
    k++
}
console.log(result)
//console.log(setList(2,4))
console 命令行工具 X clear

                    
>
console