我有一个看起来像这样的数组:
numbers = [0, 1, 2, 3, 4, 5]
现在我有一个for循环,我希望在每次迭代后,数组的顺序会改变如下:
[0, 1, 2, 3, 4, 5]
[5, 0, 1, 2, 3, 4]
[4, 5, 0, 1, 2, 3]
[3, 4, 5, 0, 1, 2] .....
如何存档?
for (i=0; i <5; i++){
//change order of array?
console.log(numbers);
}
答案 0 :(得分:5)
您可以使用unshift()
和pop()
var numbers = [0, 1, 2, 3, 4, 5]
for (var i=0; i < 5; i++) {
numbers.unshift(numbers.pop());
console.log(numbers)
}
答案 1 :(得分:1)
除了Nenad Vracar的答案之外,另一种可能是使用splice
方法:
var numbers = [0, 1, 2, 3, 4, 5]
for (var i=0; i < 5; i++) {
numbers.unshift(numbers.splice(numbers.length - 1, 1)[0]);
console.log(numbers);
}
但是,之前的答案更为优雅。