js 中通过splice实现数组中2个元素的位置更换
function move(index1, index2, arr) {
//index1 index2 需要更换的下标
arr.splice(index1, 1, ...arr.splice(index2, 1, arr[index1]))
return arr
}
function move(index1, index2, arr) {
let a = arr.splice(index1, 1, arr[index2])
arr.splice(index2, 1, ...a)
return arr
}
方法1, 2 原理相同,只是方法2 更好理解
使用unshift实现将某元素移动到数组最前面
function moveFirst(index, arr){
return arr.unshift(arr.splice(index, 1))
}
实现思路,将该元素删除然后再将其加入到数组顶部
使用push 将某元素移动到数组末尾
function moveEnd(index, arr){
return arr.push(arr.splice(index, 1))
}
实现思路同移动到顶部,删除需要移动的元素,通过push加入到末尾