我在JavaScript中遇到了一个挑战,已经尝试了一段时间。
考虑以下数组:
let arr = [0, 1, 0, 2, 0, 3, 0, 4, 0, 5];
我必须输出以下结果:
arr = [0, 0, 0, 0, 0, 5, 4, 3, 2, 1]
我遵循以下逻辑行将零放置在前面,从而调整索引值:
arr.sort((x, y) => {
if (x !== 0) {
return 1;
}
if (x === 0) {
return -1;
}
return y - x;
});
但是我被这个结果卡住了:
arr = [0, 0, 0, 0, 0, 1, 2, 3, 4, 5]
有没有人有解决此问题的提示?
return x - y;
?
return y - x;
吗?即使在javascript中,我也想不出既不是===0
也不是!==0
。