function fn(str) {
let arr = str.split("");
let rr = [];
if (arr.length === 0) {
return [];
}
travel(arr, [], rr);
console.log(rr);
}
function travel(arr, re, r) {
if (arr.length === 0 || re.length === arr.length) {
r.push(re.join(""));
return;
}
for (let i in arr) {
re.push(arr[i]);
let _arr = [...arr];
_arr.splice(i, 1);
travel(_arr, re, r);
re.pop();
}
}
fn("abc");