js实现数组内相邻元素上移,下移
上移、下移
/**
* 移动切换位置
* @param {Array} arr 数据源
* @param {Number} index 序号
* @param {String} type 上移下移
*/
moveData(arr, index, type) { const _firstIndex = type === 'top' ? index - 1 : index const _lastIndex = type === 'top' ? index : index + 1 // 处理后的数据 const _handleData = this.swapArray(arr, _firstIndex, _lastIndex) },
数组元素互换位置
/**
* 数组元素互换位置
* @param {Array} arr
* @param {Number} firstIndex
* @param {Number} lastIndex
*/
swapArray(arr, firstIndex, lastIndex) { if (firstIndex === -1 || lastIndex === arr.length) { this.$message.warning(`${firstIndex === -1 ? '已经处在第一的位置了' : '已经处在末尾的位置了'}`) return arr } arr[firstIndex] = arr.splice(lastIndex, 1, arr[firstIndex])[0] return arr }