JSFiddle - React, Tailwind, and code Playground

by Mike Lin

JavaScript

function pailie(str) {
  const result = []
  const strArray = str.split('')
  
  let resultStr = [strArray[0]]
  
	for (let i = 1; i < strArray.length; i++) {
    let result = []
    for (let j=0; j < resultStr.length; j++) {
    	for (let k = 0; k < resultStr[j].length + 1; k++) {
      	const temp = resultStr[j].slice(0, k) + strArray[i] + resultStr[j].slice(k)
        result.push(temp)
      }
    }
    resultStr = result
  }
  return resultStr
}

pailie('abc')