我有一个数组,
var myArray = [ 1,2,3,4,5 ]
和可变计数
var count = 5
伪代码:
if count = 1, output myArray = [5,1,2,3,4]
if count = 2, then myArray = [ 4,5,1,2,3]
以此类推..
如何在不使用循环的情况下实现这一目标?
答案 0 :(得分:5)
您可以使用负索引从末尾的数组中切出最后一部分和第一部分,并连接一个新数组。
function move(array, i) {
return array.slice(-i).concat(array.slice(0, -i));
}
var array = [1, 2, 3, 4, 5];
console.log(move(array, 1)); // [5, 1, 2, 3, 4].
console.log(move(array, 2)); // [4, 5, 1, 2, 3]
.as-console-wrapper { max-height: 100% !important; top: 0; }
答案 1 :(得分:2)
使用pop
删除数组的最后一项,然后使用unshift
将该数组添加到错误的开头
const count = 2;
const myArray = [ 1,2,3,4,5 ];
for (let i = 0; i < count; i++) {
myArray.unshift(myArray.pop());
}
console.log(myArray);