const getAllSubsets = array =>
array.reduce((pre, cur) =>
pre.concat(pre.map(item => [...item, cur]))
, [[]])
console.log(getAllSubsets([1,2,3])); // [[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]]
// 如果箭头函数带{}则切记要记得return出去
// const getAllSubsets = (array) => {
// return array.reduce((pre, cur) => {
// return pre.concat(pre.map((item) => {
// return [...item, cur];
// }))
// }, [[]])
// }
// console.log(getAllSubsets([1,2,3])); // [[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]]