Javascript数组//在保持原始顺序的同时重新排序从指定索引开始的数组

时间:2015-01-11 17:13:51

标签: javascript arrays sorting

拥有以下数组:

var arr = [a,b,c,d,e];

我正在努力获得一个基于指定索引对数组进行排序的清理函数,同时保持原始顺序

例如,从索引3(这里,从“d”)对数组进行排序将得到以下结果:

[d,e,a,b,c]

从索引2开始:

[c,d,e,a,b]

等...

对于某些人来说可能是显而易见的,但我无法在脑海中实现

提前帮助表示赞赏

*编辑*

是重复的。这是一个很好的。

https://stackoverflow.com/a/7861200/102133

2 个答案:

答案 0 :(得分:3)



var arr = ['a','b','c','d','e'];

function reorder(data, index) {
  return data.slice(index).concat(data.slice(0, index))
};

console.log(reorder(arr, 3));
console.log(reorder(arr, 2));




答案 1 :(得分:1)

此功能将完成您​​的工作

var reorder = function(arr,index){
    var start = arr.slice(index); // This will return me elements from a given index
    var end = arr.slice(0,index); // This will return me elements before a given index
    return start.concat(end); // Concat 2nd array to first and return the result.
 }