SOURCE

function printMiddle(n, nums) {
    let re = [];
    let arr = [...nums]; // 拷贝原数组
    let sortArr = nums.sort((a, b) => a-b); // 数组排序
    // mid 是排序后的中间值
    let mid = sortArr[n / 2]; 
    for(let i = 0; i < n; i++) {
        // 若当前值小于mid的话,则删掉之后中位数就是mid,
        // 若>=的话中位数就是mid的左边那个元素
        if (arr[i] < mid) {
            re.push(mid);
        } else {
            re.push(sortArr[(n / 2) - 1]);
        }
    }
    return re;
}
console.log(printMiddle(8, [10, 15, 13, 2, 6, 4, 2, 9]));
console 命令行工具 X clear

                    
>
console