在javascript中排序一个数组,这样新的开始和结束的项目,但他们有相同的顺序



假设这个数组的数字是倒序的

var days = [6, 5, 4, 3, 2, 1, 0];

我有这个变量:

var startingDay = 4;

如何对数组进行排序,使数组像这样

console.log(days == [4, 3, 2, 1, 0, 6, 5]);
>> true

? ?

谢谢!

可以通过切片和连接两部分来旋转数组。

var days = [6, 5, 4, 3, 2, 1, 0];
var day = 4;
var idx = days.indexOf(day);
var res = days.slice(idx).concat(days.slice(0, idx));
console.log(res);

您也可以使用unshiftsplice来就地修改数组。

var days = [6, 5, 4, 3, 2, 1, 0];
var day = 4;
days.unshift(...days.splice(days.indexOf(day), days.length));
console.log(days);

最新更新