编辑代码

const nums = [9, 2, 8, 5, 20, 5, 8];

function quickSort(array) {
    const sort = (arr, left = 0, right = arr.length - 1) => {
        if (left >= right) return
        const base = arr[left];
        let l = left;
        let h = right;
        while (l < h) {
            while (l < h && arr[h] >= base) {
                h--;
            }
            if (l < h) arr[l] = arr[h];
            while (l < h && arr[l] <= base) {
                l++;
            }
            if (l < h) arr[h] = arr[l];
        }
        arr[l] = base;
        sort(arr, left, l - 1);
        sort(arr, l + 1, right);
    }
    const newArr = array.concat();
    sort(newArr);
    return newArr;
}

console.log(quickSort(nums));