根据计数将最后一项推到数组中的第一项

Kis*_* Jv -2 javascript arrays

我有一个阵列,

 var myArray = [ 1,2,3,4,5 ] 
Run Code Online (Sandbox Code Playgroud)

和变数,

var count = 5
Run Code Online (Sandbox Code Playgroud)

伪代码:

   if count = 1, output myArray = [5,1,2,3,4]  
   if count = 2, then myArray = [ 4,5,1,2,3] 
Run Code Online (Sandbox Code Playgroud)

等等 ..

如何在不使用循环的情况下实现此目的?

Nin*_*olz 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] 
Run Code Online (Sandbox Code Playgroud)
.as-console-wrapper { max-height: 100% !important; top: 0; }
Run Code Online (Sandbox Code Playgroud)