JavaScript交换数组元素位置的几种方式
交换元素在开发或者做算法时,会经常使用,总结了一下几种方式
1、运用第三方变量
这是最基础的一种方式,创建一个变量作为中转
//需要交换的两个变量 let [a,b] = [1,3] //创建的中转变量 let temp = [] temp = a a = b b = temp console.log(a,b) // 3,1
2、splice()方法
splice()方法用于插入、删除、替换数组元素,会返回被删除的元素
var list=['a','b','c','d','e','f']; // 首(index=0)尾(index=5)互换 list.splice(0,1,...list.splice(5, 1, list[0])); console.log(list); >>> (6) ['f', 'b', 'c', 'd', 'e', 'a']
array.splice(index1, 1 , array[index2])会将index1位置上的元素替换为index2位置的元素,同时返回[array[index1]](注意此时返回的是数组,所以在代码中加入了扩展运算符…将数组转为参数序列)。再利用同样的方式将index2位置上的元素替换为被删除的原数组的array[index1]的值。完成交换
3、解构赋值
利用ES6的解构赋值更加简洁的进行元素交换
var list=['a','b','c','d','e','f']; // 索引为1('b'),3('d')互换 [list[1],list[3]]=[list[3],list[1]]; console.log(list); >>> (6) ['a', 'd', 'c', 'b', 'e', 'f']
等号左右两边模式相同,就会将右边的值赋给左边的变量
---------------------
作者:没有天赋全靠手打
来源:CSDN
原文:https://blog.csdn.net/qq_45494634/article/details/114674162
版权声明:本文为作者原创文章,转载请附上博文链接!
内容解析By:CSDN,CNBLOG博客文章一键转载插件