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 相关文章推荐
javascript attachEvent绑定多个事件执行顺序问题
Oct 20 Javascript
jquery实现图片等比例缩放以及max-width在ie中不兼容解决
Mar 21 Javascript
JQuery实现绚丽的横向下拉菜单
Dec 19 Javascript
jQuery Validate 验证,校验规则写在控件中的具体实例
Feb 27 Javascript
JavaScript事件委托的技术原理探讨示例
Apr 17 Javascript
js中substring和substr两者区别和使用方法
Nov 09 Javascript
Javascript基础学习笔记(菜鸟必看篇)
Jul 22 Javascript
javascript实现鼠标点击页面 移动DIV
Dec 02 Javascript
理解 Node.js 事件驱动机制的原理
Aug 16 Javascript
详解Vue中watch的详细用法
Nov 28 Javascript
微信小程序实现多个按钮的颜色状态转换
Feb 15 Javascript
vue.js 2.*项目环境搭建、运行、打包发布的详细步骤
May 01 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
收音机史话 - 1960年代前后的DIY
2021/03/02 无线电
实用PHP会员权限控制实现原理分析
2011/05/29 PHP
PHP基于单例模式编写PDO类的方法
2016/09/13 PHP
thinkPHP5.0框架命名空间详解
2017/03/18 PHP
php+croppic.js实现剪切上传图片功能
2018/08/14 PHP
laravel接管Dingo-api和默认的错误处理方式
2019/10/25 PHP
纯JavaScript实现的完美渐变弹出层效果代码
2010/04/02 Javascript
给artDialog 5.02 增加ajax get功能详细介绍
2012/11/13 Javascript
JQuery实现简单时尚快捷的气泡提示插件
2012/12/20 Javascript
JQuery入门—JQuery程序的代码风格详细介绍
2013/01/03 Javascript
jQuery之DOM对象和jQuery对象的转换与区别分析
2015/01/08 Javascript
jQuery控制li上下循环滚动插件用法实例(附demo源码下载)
2016/05/28 Javascript
jQuery常用样式操作实例分析(获取、设置、追加、删除、判断等)
2016/09/08 Javascript
Javascript for in的缺陷总结
2017/02/03 Javascript
jQuery监听浏览器窗口大小的变化实例
2017/02/07 Javascript
JS实现的按钮点击颜色切换功能示例
2017/10/19 Javascript
原生JS实现的雪花飘落动画效果
2018/05/03 Javascript
JS中的JSON对象的定义和取值实现代码
2018/05/09 Javascript
微信小程序设置全局请求URL及封装wx.request请求操作示例
2019/04/02 Javascript
js form表单input框限制20个字符,10个汉字代码实例
2019/04/12 Javascript
vue使用vuex实现首页导航切换不同路由的方法
2019/05/08 Javascript
vue+elementui 对话框取消 表单验证重置示例
2019/10/29 Javascript
JavaScript运行机制实例分析
2020/04/11 Javascript
JS原型对象操作实例分析
2020/06/06 Javascript
对tensorflow中tf.nn.conv1d和layers.conv1d的区别详解
2020/02/11 Python
Python模拟FTP文件服务器的操作方法
2020/02/18 Python
django queryset相加和筛选教程
2020/05/18 Python
css3设置box-pack和box-align让div里面的元素垂直居中
2014/09/01 HTML / CSS
HTML5 source标签:媒介元素定义媒介资源
2018/01/29 HTML / CSS
自荐信不宜过于夸大
2013/11/06 职场文书
大学毕业自我评价
2014/02/02 职场文书
信息与计算科学专业推荐信
2014/02/23 职场文书
销售会计岗位职责
2014/03/15 职场文书
《傅雷家书》教学反思
2014/04/20 职场文书
刑事附带民事上诉状
2015/05/23 职场文书
浅析Django接口版本控制
2021/06/26 Python