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 不只是脚本
May 30 Javascript
jQuery 页面 Mask实现代码
Jan 09 Javascript
基本jquery的控制tabs打开的数量的代码
Oct 17 Javascript
通过jQuery源码学习javascript(三)
Dec 27 Javascript
js弹出框轻量级插件jquery.boxy使用介绍
Jan 15 Javascript
JS 添加千分位与去掉千分位的示例
Jul 11 Javascript
jQuery使用$.ajax进行异步刷新的方法(附demo下载)
Dec 04 Javascript
本地Bootstrap文件字体图标引入却无法显示问题的解决方法
Apr 18 Javascript
基于JS脚本语言的基础语法详解
Jul 22 Javascript
使用JS获取页面上的所有标签
Oct 18 Javascript
vue+element 实现商城主题开发的示例代码
Mar 26 Javascript
vue render函数动态加载img的src路径操作
Oct 26 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设计模式 Template (模板模式)
2011/06/26 PHP
摘自织梦CMS的HTTP文件下载类
2015/08/08 PHP
php中钩子(hook)的原理与简单应用demo示例
2019/09/03 PHP
Laravel timestamps 设置为unix时间戳的方法
2019/10/11 PHP
Javascript中的Split使用方法与技巧
2007/03/09 Javascript
利用google提供的API(JavaScript接口)获取网站访问者IP地理位置的代码详解
2010/07/24 Javascript
jquery 多行文本框(textarea)高度变化
2013/07/03 Javascript
使用javascript实现Iframe自适应高度
2014/12/24 Javascript
用队列模拟jquery的动画算法实例
2015/01/20 Javascript
JavaScript 封装一个tab效果源码分享
2015/09/15 Javascript
EasyUI Pagination 分页的两种做法小结
2016/07/09 Javascript
用jQuery实现可输入多选下拉组合框实例代码
2017/01/18 Javascript
详解angular用$sce服务来过滤HTML标签
2017/04/11 Javascript
详解angularjs获取元素以及angular.element()用法
2017/07/25 Javascript
微信小程序实现图片上传功能实例(前端+PHP后端)
2018/01/10 Javascript
在vue中实现点击选择框阻止弹出层消失的方法
2018/09/15 Javascript
vue拖拽组件 vuedraggable API options实现盒子之间相互拖拽排序
2019/07/08 Javascript
微信小程序中如何计算距离某个节日还有多少天
2019/07/15 Javascript
微信小程序实现吸顶特效
2020/01/08 Javascript
Vue 事件的$event参数=事件的值案例
2021/01/29 Vue.js
微信小程序实现点赞业务
2021/02/10 Javascript
使用Numpy读取CSV文件,并进行行列删除的操作方法
2018/07/04 Python
详解Python 装饰器执行顺序迷思
2018/08/08 Python
十分钟搞定pandas(入门教程)
2019/06/21 Python
Django 模型类(models.py)的定义详解
2019/07/19 Python
tensorflow -gpu安装方法(不用自己装cuda,cdnn)
2020/01/20 Python
python 利用Pyinstaller打包Web项目
2020/10/23 Python
Django用内置方法实现简单搜索功能的方法
2020/12/18 Python
浅谈amaze-ui中datepicker和datetimepicker注意的几点
2020/08/21 HTML / CSS
Microsoft新加坡官方网站:购买微软最新软件和技术产品
2016/10/28 全球购物
十八届三中全会报告学习材料
2014/02/17 职场文书
质量承诺书怎么写
2014/05/24 职场文书
预防煤气中毒方案
2014/06/16 职场文书
使用pandas生成/读取csv文件的方法实例
2021/07/09 Python
为什么MySQL 删除表数据 磁盘空间还一直被占用
2021/10/16 MySQL
Python字符串的转义字符
2022/04/07 Python