// 假设我们有一个数字数组和一个条件函数
// 条件函数返回true的元素将被移动到数组的前面
let numbers = [1, 2, 3, 4, '', 6, '', 8, 9];
let condition = (value) => value === ''; // 例如,我们想把偶数移动到前面
// 使用sort函数实现
numbers.sort((a, b) => {
let aSatisfies = condition(a);
let bSatisfies = condition(b);
if (aSatisfies && !bSatisfies) {
// 如果a满足条件而b不满足,a应该排在b前面
return -1;
} else if (!aSatisfies && bSatisfies) {
// 如果b满足条件而a不满足,b应该排在a前面
return 1;
} else {
// 如果都满足条件或者都不满足条件,维持原有次序
return 0;
}
});
console.log(numbers); // 偶数已经被移动到了数组的前面
人工智能学习网站
https://chat.xutongbao.top