JS 对Array集合排序的方法
我的业务是根据距离的远近经行一个排序;
第一种方法:冒泡排序
排序前的数据是这样子的:

排序后是这样子的:

代码可以直接复制使用的:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="initial-scale=1.0, user-scalable=no, width=device-width">
<title></title>
<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js">
</script>
</head>
<body> <script type="text/javascript">
$(function(){
var _arrayList=new Array();
var _newArrayList=new Array(); _arrayList[0]={"id":1,"name":"张三","distance":100};
_arrayList[1]={"id":2,"name":"李四","distance":120};
_arrayList[2]={"id":3,"name":"王武","distance":80};
_arrayList[3]={"id":4,"name":"二狗","distance":40};
_arrayList[4]={"id":5,"name":"屎蛋","distance":160}; for(var i=0;i<_arrayList.length;i++)
{
for(var u=i+1;u<_arrayList.length;u++)
{
if(parseFloat(_arrayList[i]["distance"])>parseFloat(_arrayList[u]["distance"]))
{
var num=[];
num=_arrayList[i];
_arrayList[i]=_arrayList[u];
_arrayList[u]=num; }
}
}
console.log(_arrayList); });
</script>
</body>
</html>
第二种方法:JavaScript sort()
经过网友的介绍知道了这个set方式,太好用了!
直接上代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js">
</script>
</head>
<body>
<div>
<table>
<thead>
<tr>
<td>Id</td>
<td>姓名</td>
<td>距离(米)</td>
</tr>
</thead>
<tbody id="arrayDiv">
<tr><td></td><td></td><td></td></tr>
</tbody>
</table>
</div>
<script> $(function () {
var result = [
{ "id": 1, "name": "张三", "distance": 100 },
{ "id": 2, "name": "李四", "distance": 120 },
{ "id": 3, "name": "王武", "distance": 80 },
{ "id": 4, "name": "二狗", "distance": 40 },
{ "id": 5, "name": "屎蛋", "distance": 160 }
];
function sortId(a, b) {
return a.distance - b.distance;//由低到高
//return b.distance - a.distance;//由高到低
}
result.sort(sortId);
console.log(result);
var _html = "";
for (var i = 0; i < result.length; i++) {
_html += "<tr><td>" + result[i].id + "</td><td>" + result[i].name + "</td><td>" + result[i].distance + "</td></tr>";
}
$("#arrayDiv").html(_html);
});
</script>
</body>
</html>
这是运行效果

JS 对Array集合排序的方法的更多相关文章
- Collections -集合排序compareTo方法重写,shuffle,addall
package cn.learn.collection.Collections; /* 排序的对象的类,实现comparable借口,重写compareto方法 若要打印必须重写toString方法, ...
- List集合排序的方法
1.list集合中的对象实现Comparable接口 public class User implements Comparable<User>{ private Integer id; ...
- 关于自定义 List集合排序的方法!
大致流程: 排序是用到排序的接口Comparator<T>你要先建一个类实现比较器Comparator //大致流程public class StuComp implements Comp ...
- 数组Array.sort()排序的方法
数组sort排序 sort比较次数,sort用法,sort常用 描述 方法sort()将在原数组上对数组元素进行排序,即排序时不创建新的数组副本.如果调用方法sort()时没有使用参数,将按字母顺序( ...
- Chrome谷歌浏览器中js代码Array.sort排序的bug乱序解决办法
[现象] 代码如下: var list = [{ n: "a", v: 1 }, { n: "b", v: 1 }, { n: "c", v ...
- Java中List集合排序的方法 比较器的使用 根据学生对象数学 语文 英语成绩总和进行sort排序
package com.swift; import java.util.ArrayList; import java.util.Collections; import java.util.Compar ...
- js实现汉字中文排序的方法 例如:省市列表的排序
localeCompare() 1.数组内的元素是中文字符串的简单排序 var arr = ['南京', '北京', '上海', '杭州', '深圳']; function sortChinese ( ...
- Js获取后台集合List的值和下标的方法
Js获取后台集合List的值和下标的方法 转载自:http://blog.csdn.net/XiaoKanZheShiJie/article/details/47280449 首先用的是struts2 ...
- JS对Array进行自定制排序
JS对Array进行自定制排序,简单的做一个记录,代码如下所示: //Test function function myFunction(){ var myArr = new Array(); var ...
随机推荐
- codeforces#983 B. XOR-pyramid (dp)
参考博客:https://www.01hai.com/note/av137952. 题意:首先定义 (b代表一个数组) 给出一个区间,l,r,求它最大的连续子序列的函数值 分析: 定义dp[x][y] ...
- Java基础——枚举详解
前言: 在第一次学习面向对象编程时,我记得最深的一句话就是“万物皆对象”.于是我一直秉承着这个思想努力的学习着JAVA,直到学习到枚举(Enum)时,看着它颇为奇怪的语法……我一直在想,这TM是个什么 ...
- 爬虫免登录进入github
import requests import re ret = requests.get('https://github.com/login') print(ret.headers) cookies ...
- [luogu3380][bzoj3196]【模板】二逼平衡树【树套树】
题目地址 [洛谷传送门] 题目大意 区间查询k的排名,查找k排名的数,单点修改,区间前驱,区间后继. 感想 真的第一次写树套树,整个人都不对了.重构代码2次,发现样例都过不了,splay直接爆炸,可能 ...
- Flink部署-standalone模式
Flink部署-standalone模式 2018年11月30日 00:07:41 Xlucas 阅读数:74 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.cs ...
- 针对监控摄像机(海康、大华等)录像 .h264 文件的流媒体播放设计
监控摄像机(海康.大华等)内部带的录像功能一般录制的是h264文件,这种文件格式简单的把每一帧h264字节数据保存到文件里. 实际使用中,可能需要对特定录像进行反复检测,以训练.改进视频检测算法的准确 ...
- Chrome浏览器中autocomplete="off"不起作用解决方案
多数浏览器默认会缓存input的值,只有使用ctl+F5强制刷新的才可以清除缓存记录. 如果不想让浏览器缓存input的值,有2种方法: 方法一: 在不想使用缓存的input中添加 autocompl ...
- 面试:atoi() 与 itoa()函数的内部实现(转)
原 面试:atoi() 与 itoa()函数的内部实现 2013年04月19日 12:05:56 王世晖 阅读数:918 #include <stdio.h> #include < ...
- flyway和liquibase的使用样例
在代码上我们有svn和git等诸多的版本控制方法. 但是在数据库上却没有相应的工具.一度导致多环境见的数据库同步难以维持. flyway和liquibase都是常见的数据库版本控制工具. flyway ...
- C语言运算符优先级总结
一 写在开头1.1 本文内容本文内容为C语言中运算符优先级的总结.转载于:https://blog.csdn.net/huangblog/article/details/8271791,感谢原作者的付 ...