JavaScript沿数组中的所有项移动X个数
我想创建一个接受2个参数的函数,第一个参数是数组,第二个参数是移动所有数组项的索引位置数 例如,如果我通过exampleFunc([1,2,3,4,5],2),它应该将所有项向右移动两处,因此返回[4,5,1,2,3]。我已经做了以下几点,但是有没有更雄辩/有效的方法?另外,如果我想反转方向,压缩成一个函数,而不是下面的两个函数,除了在每个函数的不同部分加上条件外,还有什么建议吗?尝试使用.splice()方法,但实际上没有成功。任何帮助都将不胜感激JavaScript沿数组中的所有项移动X个数,javascript,arrays,Javascript,Arrays,我想创建一个接受2个参数的函数,第一个参数是数组,第二个参数是移动所有数组项的索引位置数 例如,如果我通过exampleFunc([1,2,3,4,5],2),它应该将所有项向右移动两处,因此返回[4,5,1,2,3]。我已经做了以下几点,但是有没有更雄辩/有效的方法?另外,如果我想反转方向,压缩成一个函数,而不是下面的两个函数,除了在每个函数的不同部分加上条件外,还有什么建议吗?尝试使用.splice()方法,但实际上没有成功。任何帮助都将不胜感激 const moveArrayPositi
const moveArrayPositionRight=(数组,移动位置)=>{
设newArray=newArray(Array.length);
对于(i=0;i log(moveArrayPositionRight([2,4,6,8,10,2]);//输出:[8,10,2,4,6]
您有要将数组切片并重新排列的位置索引,因此可以使用.slice
来精确执行此操作-提取需要重新排列的子数组,并将其放入新数组中:
const moveArrayPositionRight=(数组,移动位置)=>[
…array.slice(array.length-movePositions),
…array.slice(0,array.length-movePositions)
];
log(moveArrayPositionRight([2,4,6,8,10,2]);//输出:[8,10,2,4,6]
log(moveArrayPositionRight([2,4,6,8,10,3]);//预期[6,8,10,2,4]