首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

js数组操作有关问题

2013-04-09 
js数组操作问题、原数组:arr [0,1,2,3,4]新数组:newArr []指定值 i 0//i可以是原数组的任意一个值

js数组操作问题、
原数组:arr = [0,1,2,3,4]
新数组:newArr = [];
指定值 i = 0;//i可以是原数组的任意一个值

然后根据i的值和原数组 组成新的数组newArr
原数组下标i位置的元素 需要是新数组下标2的元素
剩下的元素依次排序
-----------------------------------
例如:
i=0;
newArr应该是[3,4,0,1,2]
i=1;
newArr应该是[4,0,1,2,3]
i=4;
newArr应该是[2,3,4,0,1]
-----------------------------------
求指导! js数组操作?排序
[解决办法]


function calc(i, oldArr) {
var i = i 
[解决办法]
 0,
oldArr = oldArr 
[解决办法]
 [0,1,2,3,4,5,6,7,8,9,10],
newArr = [],
len = oldArr.length,
half = (oldArr.length - 1) / 2;

for(var j = 0; j < len; j++) {
if(j < half) {
newArr.push((i - (half - j) < 0) ? len + i - (half - j) : (i - (half - j)));
} else if(j > half) {
newArr.push(i + (j - half));
} else {
newArr.push(i)
}
}
console.log(newArr);
return newArr;
}
calc(1);

[解决办法]

var arr = [0,1,2,3,4];
var newArr = [];
var i=0;
newArr = arr.slice((3+i)%arr.length).concat(arr).slice(0,arr.length);
alert(newArr);

热点排行