一、定义中间变量法
let list=['1','2','3','4','5'];
let mid = '';
mid = list[2];
list[2] = list[1]
list[1] = mid
console.log(list) // (5) ['1', '3', '2', '4', '5']
说明:(有点绕舌 haha)
- 定义一个中间变量 mid
- 将需要转变位置的其中一个元素赋值给中间变量
- 将没有赋值给中间变量的元素赋值给赋值给中间变量的元素
- 将中间变量赋值给没有赋值给中间变量的元素,完成转换
二、数组的splice(ES5)方法
let list=['1','2','3','4','5'];
let spliceNum = list.splice(2,1,list[1])[0]
list.splice(1,1,spliceNum)
console.log(list) // (5) ['1', '3', '2', '4', '5']
说明:
- 将index == 2的元素替换为 index==1的元素,并将index==2的元素赋值给spliceNum
- 将index==1的元素替换为spliceNum,完成转换
三、splice 配合ES6的扩展运算符...
let list=['1','2','3','4','5'];
list.splice(1,1,...list.splice(2,1,list[1]))
console.log(list) // (5) ['1', '3', '2', '4', '5']
说明:
- ...list.splice(2,1,list[1]) 将index == 2的元素替换为 index==1的元素并返回index==2的值,再进行外部splice
四、结构赋值(ES6)
let list=['1','2','3','4','5'];
[list[1],list[2]] = [list[2],list[1]]
console.log(list) // (5) ['1', '3', '2', '4', '5']
说明:
- 记得加分号就行了