把数组中的所有空字符串移动到数组的前面

// 假设我们有一个数字数组和一个条件函数
// 条件函数返回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

posted @ 2024-04-09 17:55  徐同保  阅读(2)  评论(0编辑  收藏  举报  来源