javascript - 求一个JS数组重新排序的算法
怪我咯
怪我咯 2017-04-11 11:18:20
[JavaScript讨论组]
   $scope.testArr = [
     {id:"1",name:"yi"},
     {id:"2",name:"er"},
     {id:"3",name:"san"},
     {id:"4",name:"si"}
    ]

 

{{item.name}}

问题:根据首次点击选中的项 重新生成数组 当前选中的项为数组的第一个元素,依次类推
例如首次点击的是id为2的项 则新数组为:
[{id:"2",name:"er"},{id:"3",name:"san"}, {id:"4",name:"si"}, {id:"1",name:"yi"}]
首次选中的是id为3的项 新数组为
[{id:"3",name:"san"}, {id:"4",name:"si"},{id:"1",name:"yi"}{id:"2",name:"er"}]

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回复(1)
ringa_lee
function reSort(arr,index){
    index = index || 0;
    if( !arr || arr.length === 0 || index > arr.length ) return arr;
    var front = arr.slice(0,index);
    var end = arr.slice(index);
    return end.concat(front);
}

var arr =  [
     {id:"1",name:"yi"},
     {id:"2",name:"er"},
     {id:"3",name:"san"},
     {id:"4",name:"si"}
    ];

reSort(arr,1);
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号