两个元素位置互换

  1. function swapArr(arr, index1, index2) {
  2. arr[index1] = arr.splice(index2, 1, arr[index1])[0];
  3. return arr;
  4. }

arr[1] 和 arr[3] 互换
image.png

指定位置的元素移动到首位

  1. function toFirst(arr, index) {
  2. if (index != 0) {
  3. arr.unshift(arr.splice(index, 1)[0]);
  4. }
  5. }

arr[4] 移动到首位
image.png

指定位置元素前移一个位置

  1. function moveForwardOneSpace(arr, index){
  2. if (index != 0) {
  3. arr[index] = arr.splice(index-1, 1, arr[index])[0];
  4. } else {
  5. arr.push(arr.shift());
  6. }
  7. }

相当于和前一个位置的元素互换位置
image.png

指定位置元素后移一个位置

  1. function moveBackOneSpace(arr, index) {
  2. if (index != arr.length-1) {
  3. arr[index] = arr.splice(index+1, 1, arr[index])[0];
  4. } else {
  5. arr.unshift( arr.splice(index,1)[0]);
  6. }
  7. }

相当于和后一个位置的元素互换位置