js函数排序的实例代码


Posted in Javascript onJuly 01, 2013
var as = [1,2,11,3434,3,4545,33,55,0];
as.sort(); //这个排序是按照字典排序
//自定义按照数字排序
function sortByNum(a,b){
return parseInt(a) - parseInt(b);
}
as.sort(sortByNum);
//按照对象来排序
//定义一个person对象
function Person(name.age){
this.name=name;
this.age=age;
}
var p1 = new Person("zhang1",11);
var p2 = new Person("zhang2",1);
var p3 = new Person("zhang3",18);
var p4 = new Person("zhang4",13);
var ps = [p1,p2,p3,p4];
function sortByName(obj1,obj2){
 if(obj1.name>obj2.name){return 1}
 else if(obj1.name==obj2.name){return 0}
 else{return -1}
 }
function sortByAge(obj1,obj2){
 return obj1.age - obj2.age;
 }
 ps.sort(sortByName) //按照名字排序
 ps.sort(sortByAge) //按照年龄排序

以上排序带来的问题就是假设对象有很多属性,那么我们程序就要为多少属性分别去设置排序的规则。所以就有了如下方法:
function sortByProperty(proName){
var sortFun = function(obj1,obj2){
if(obj1[proName]>obj2[proName]) {return 1}
else if(obj1[proName]==obj2[proName]) {return 0}
else {return -1}
}
return sortFun;
}
Javascript 相关文章推荐
wordpress之js库集合研究介绍
Aug 17 Javascript
利用进制转换压缩数字函数分享
Jan 02 Javascript
让IE8浏览器支持function.bind()方法
Oct 16 Javascript
纯javascript响应式树形菜单效果
Nov 10 Javascript
详解Javascript事件驱动编程
Jan 03 Javascript
用原生js统计文本行数的简单示例
Aug 19 Javascript
bootstrap模态框远程示例代码分享
May 22 Javascript
微信小程序自定义toast的实现代码
Nov 16 Javascript
vue axios重复点击取消上一次请求封装的方法
Jun 19 Javascript
适合前端Vue开发童鞋的跨平台Weex的使用详解
Oct 16 Javascript
js实现点击按钮随机生成背景颜色
Sep 05 Javascript
element中table高度自适应的实现
Oct 21 Javascript
利用JS延迟加载百度分享代码,提高网页速度
Jul 01 #Javascript
jQuery提交多个表单的小例子
Jun 30 #Javascript
用jquery存取照片的具体实现方法
Jun 30 #Javascript
js正文内容高亮效果的实现方法
Jun 30 #Javascript
Jquery网页出现的乱码问题的三种解决方法
Jun 30 #Javascript
JavaScript全排列的六种算法 具体实现
Jun 29 #Javascript
利用js 进行输入框自动匹配字符的小例子
Jun 29 #Javascript
You might like
PHP网站提速三大“软”招
2006/10/09 PHP
WHOIS类的修改版
2006/10/09 PHP
php数组的概述及分类与声明代码演示
2013/02/26 PHP
php的GD库imagettftext函数解决中文乱码问题
2015/01/24 PHP
PHP设置Cookie的HTTPONLY属性方法
2017/02/09 PHP
php 浮点数比较方法详解
2017/05/05 PHP
JavaScript 计算图片加载数量的代码
2011/01/01 Javascript
JS给超链接加确认对话框的方法
2015/02/24 Javascript
jQuery实现将页面上HTML标签换成另外标签的方法
2015/06/09 Javascript
JavaScript截屏功能的实现代码
2017/07/28 Javascript
vuex学习之Actions的用法详解
2017/08/29 Javascript
js封装成插件_Canvas统计图插件编写实例
2017/09/12 Javascript
浅谈vue路径优化之resolve
2017/10/13 Javascript
vue基于mint-ui的城市选择3级联动的示例
2017/10/25 Javascript
JS实现统计字符串中字符出现个数及最大个数功能示例
2018/06/04 Javascript
React项目动态设置title标题的方法示例
2018/09/26 Javascript
微信小程序实现登录遮罩效果
2018/11/01 Javascript
JavaScript学习笔记之基于定时器实现图片无缝滚动功能详解
2019/01/09 Javascript
最简单的JS实现json转csv的方法
2019/01/10 Javascript
微信小程序生成分享海报方法(附带二维码生成)
2019/03/29 Javascript
vue实现新闻展示页的步骤详解
2019/04/11 Javascript
优化Vue项目编译文件大小的方法步骤
2019/05/27 Javascript
通过实例了解Javascript柯里化流程
2020/03/03 Javascript
2分钟实现一个Vue实时直播系统的示例代码
2020/06/05 Javascript
[00:55]2015国际邀请赛中国区预选赛5月23日——28日约战上海
2015/05/25 DOTA
Python 文件操作的详解及实例
2017/09/18 Python
对python中大文件的导入与导出方法详解
2018/12/28 Python
Python3实现的回文数判断及罗马数字转整数算法示例
2019/03/27 Python
详解Python使用Plotly绘图工具,绘制甘特图
2019/04/02 Python
Django使用list对单个或者多个字段求values值实例
2020/03/31 Python
开展党的群众路线教育实践活动情况汇报
2014/11/05 职场文书
签证工作证明模板
2015/06/15 职场文书
学风建设主题班会
2015/08/17 职场文书
《认识钟表》教学反思
2016/02/16 职场文书
2016年青少年禁毒宣传教育活动总结(学校)
2016/04/05 职场文书
python 命令行传参方法总结
2021/05/25 Python