JS排序

yjicdgv 2011-09-23 11:03:46
在一个Array里面有N个div对象
div对象的zindex是不连续的
例如:2.6.3.10.7.8.12.5.5
现在要求处理后的div的zindex是连续的
例如:1.4,2, 7,5,6, 8,3,3

...全文
113 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
yjicdgv 2011-09-23
  • 打赏
  • 举报
回复
项上去
yjicdgv 2011-09-23
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 liangws 的回复:]
引用 6 楼 yjicdgv 的回复:

排序前 2.6.3.10.7.8.12.5.5
排序后 1.4,2, 7,5,6, 8,3,3
2是最小的所以排序后应该最小(这里假设最小为1)
6在排序前是排第四的 排序后为4
......

终于看明白了。。
简单来说。1.4,2, 7,5,6, 8,3,3是2.6.3.10.7.8.12.5.5,下对应的索引。。
[/Quote]恩 可以这样理解
liangws 2011-09-23
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 yjicdgv 的回复:]

排序前 2.6.3.10.7.8.12.5.5
排序后 1.4,2, 7,5,6, 8,3,3
2是最小的所以排序后应该最小(这里假设最小为1)
6在排序前是排第四的 排序后为4
......
[/Quote]
终于看明白了。。
简单来说。1.4,2, 7,5,6, 8,3,3是2.6.3.10.7.8.12.5.5,下对应的索引。。
yjicdgv 2011-09-23
  • 打赏
  • 举报
回复
排序前 2.6.3.10.7.8.12.5.5
排序后 1.4,2, 7,5,6, 8,3,3
2是最小的所以排序后应该最小(这里假设最小为1)
6在排序前是排第四的 排序后为4
......

yjicdgv 2011-09-23
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 aj3423 的回复:]
例如:1.4,2, 7,5,6, 8,3,3
打错了吧。。
[/Quote]

按大小排序的 不是按顺序
之前的zindex如果是最大的话 修改后还应该是最大
不能改变之前zindex的大小顺序
liangws 2011-09-23
  • 打赏
  • 举报
回复
1.4,2, 7,5,6, 8,3,3??没看懂这是什么顺序

意思是升序或者降序么?给个类似的,升序
var arr = [{index:10},{index:1},{index:3},{index:2},{index:7},{index:5},{index:8}];

arr.sort(function(a, b){
return a.index - b.index;
})
aj3423 2011-09-23
  • 打赏
  • 举报
回复
例如:1.4,2, 7,5,6, 8,3,3
打错了吧。。
abcd_ufo 2011-09-23
  • 打赏
  • 举报
回复
没有规律 没法弄啊
knightzhuwei 2011-09-23
  • 打赏
  • 举报
回复
你的连续有点奇怪啊
打字员 2011-09-23
  • 打赏
  • 举报
回复

var arr = [{zindex:2}, {zindex:6}, {zindex:3}, {zindex:10}, {zindex:7}, {zindex:8}, {zindex:12}, {zindex:5}, {zindex:5}];

temp = [];
var index;
for(var i = 0; i < arr.length; i++) { //创建一个map
index = arr[i].zindex; //将zindex作为map的指针
temp[index]? temp[index].push(i) : temp[index] = [index, i]; //将相同zindex的项在数组中的下标存在一起
}
index = 1;
var len = arr.length;
var j = 0;
while(index < len) {//循环读取map
if(temp[j]) {
for(var k = 1; k < temp[j].length; k++) { //循环读取当前zindex所对应的数组项的下标
arr[temp[j][k]].zindex = index;
}
index++;
}
j++;
}

//显示结果
for(each in arr) {
document.write(arr[each].zindex + '<br/>');
}

87,901

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧