// Usage Example: const result = permutations('abc')
for (let value of result) { console.log(value) }
A Pen by Vlad Bezden on CodePen.
// Usage Example: const result = permutations('abc')
for (let value of result) { console.log(value) }
A Pen by Vlad Bezden on CodePen.
| 'use strict' | |
| function* permutations(data) { | |
| if (data.length < 2) { | |
| yield* data | |
| } | |
| for (let [i, x] of[...data].entries()) { | |
| let rest = data.slice(0, i) + data.slice(i + 1) | |
| for (let j of permutations(rest)) { | |
| yield x + j | |
| } | |
| } | |
| } | |
| const result = permutations('abc') | |
| for (let value of result) { | |
| console.log(value) | |
| } |