JS 数组 上移 下移 置顶 置底 互换

3,118 阅读1分钟

上移

  up(index, array) {
    if (index === 0) return false
    // 将上一个数组元素值替换为当前元素值,并将被替换的元素值赋值给当前元素
    array[index] = array.splice(index - 1, 1, array[index])[0]
    return array
  }

下移

  down(index, array) {
    if (index === array.length - 1) return false
    // 将上下个数组元素值替换为当前元素值,并将被替换的元素值赋值给当前元素
    array[index] = array.splice(index + 1, 1, array[index])[0]
    return array
  }

置顶

  top(index, array) {
    if (index === 0) return false
    // 删除当前数组元素,并将被删除的值添加到数组开头
    array.unshift(array.splice(index, 1)[0])
    return array
  }

置底

  bottom(index, array) {
    if (index === array.length - 1) return false
    // 删除当前数组元素,并将被删除的值添加到数组末尾
    array.push(array.splice(index, 1)[0])
    return array
  }

交换

  exchange(i, j, array) {
    array[i] = array.splice(j, 1, array[i])[0]
    return array
  }