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