SOURCE

let arr = [1,5,4,8,11,65,22,1,4,5]

let l = 0,
    r = arr.length - 1;

function swap(arr,i,j){
   var temp = arr[i];
   arr[i] = arr[j];
   arr[j] = temp;
}

function quickSort(arr,l,r){
    console.log(arr);
    if(!Array.isArray(arr)){
        return;
    }

    const m = partition(arr,l,r)
    quickSort(arr,l,m-1)
    quickSort(arr,m+1,r)
}

function partition(arr,l,r){
    const refValue = arr[l];
    let j = l;
    for(let i = l+1; i <= r; i++){
       if(arr[i] > refValue ){
           continue;
       }
       if(arr[i] < refValue){
           j += 1;
           swap(arr,j,i)
       }
    }   
    return j;
}

quickSort(arr,l,r)

console.log(arr)
console 命令行工具 X clear

                    
>
console