Files
30-seconds-of-code/test/stableSort/stableSort.js
2018-02-06 18:33:49 +02:00

8 lines
238 B
JavaScript

var stableSort = (arr, compare) =>
arr
.map((item, index) => ({ item, index }))
.sort((a, b) =>
((result = compare(a.item, b.item)) => (result !== 0 ? result : a.index - b.index))()
)
.map(({ item }) => item);
module.exports = stableSort;