<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<SCRIPT LANGUAGE="JavaScript">
<!--
var a = [] ;
var obj = function(id , val){
this.id = id ;
this.val = val ;
}
var compare = function(obj1,obj2) {
return obj1.val - obj2.val;
}
var o1 = new obj(1,-1);
var o2 = new obj(3,1);
var o3 = new obj(2,2);
var o4 = new obj(4,-2);
var o5 = new obj(5,5);
var o6 = new obj(6,-3);
var o7 = new obj(8,-1);
a[0] = o1 ;
a[1] = o2 ;
a[2] = o3 ;
a[3] = o4 ;
a[4] = o5 ;
a[5] = o6 ;
a[6] = o7 ;
var s = "";
for(var i =0 ;i <a.length ;i++){
s += a[i].id+" " + a[i].val + "<br/>";
}
a.sort(compare);
s += "<br/><hr/>"
for(var i =0 ;i <a.length ;i++){
s += a[i].id+" " + a[i].val + "<br/>";
}
document.write(s);
//-->
</SCRIPT>
</HEAD>
<BODY>
</BODY>
</HTML>
附:网络找了一个js数组排序的方法
Js默认的sort方法只能按照编码顺序排序,这里做出了扩展:
//一维数组的排序
// type 参数
// 0 字母顺序(默认)
// 1 大小 比较适合数字数组排序
// 2 拼音 适合中文数组
// 3 乱序 有些时候要故意打乱顺序,呵呵
// 4 带搜索 str 为要搜索的字符串 匹配的元素排在前面
function Array.prototype.SortBy(type,str){
switch (type){
case 0:this.sort(); break;
case 1:this.sort(function(a,b){ return a-b; }); break;
case 2:this.sort(function(a,b){ return a.localeCompare(b) }); break;
case 3:this.sort(function(){ return Math.random()>0.5?-1:1; }); break;
case 4:this.sort(function(a,b){ return a.indexOf(str)==-1?1:-1; }); break;
default:this.sort();
}
}
分享到:
相关推荐
js对象属性排序
按所推荐的程序在IE下跑了下,的确,排序耗时很小。 代码如下: [removed] /* * 洗牌 */ function getRandomPlayCard(m){ var array1=new Array(m); for(var i=0;i<m;i++){ var rnd=Math.floor(Math.random()*(i+0...
主要介绍了javascript 数组排序与对象排序的实例的相关资料,需要的朋友可以参考下
js中包含一个类,该类的主要功能是:对对象数组进行多字段排序和汇总。调用方法类似: 1、排序 :new SPArraySortHelper(数据, 分组排序字段, 汇总字段).sort() 2、汇总:new SPArraySortHelper(数据, 分组排序字段,...
javascript中实现对象数组的排序功能 只要数组中的对象存在多个属性,即可传入sql语句排序形式的参数,加以排序,如传入'col1 desc,col2 asc' 就可以实现对数组中对象通过col1倒序排列,如果col1值相同,则通过col2排序,...
obj为对象,如student对象,sortName为排序字段,sortOrder为升序或降序,升序为asc,降序为desc 如果两边都为数字,转换为数字比较 如果两边都为String,比较string 如果一边是数字,一边是String,转换为数字。 ...
主要介绍了JavaScript对象数组如何按指定属性和排序方向进行排序的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
为大家分析一下js中的数组对象排序的一些知识,方便大家在以后使用中知道这些排序的原理
经常遇到下拉菜单需要排序的事情,或者取以一定规律排列的数据,这时候一个关键的问题就是排序问题。
对象省份排序.js
主要介绍了JS实现给数组对象排序的方法,结合实例形式分析了javascript数组对象排序相关实现方法与操作注意事项,需要的朋友可以参考下
分享一个用于数组或者对象的排序的函数。该函数可以以任意深度的数组或者对象的值作为排序基数对数组或的元素进行排序。 代码如下: /** * 排序数组或者对象 * by Jinko * date -- * @param object 数组或...
jsSort v0.0.5 jsSort是一种通用的排序方法,可以通过多个属性对对象数组进行排序。概述jsSort的公共API归结为一个名为sortByMultiple的方法。 此方法采用两个参数,每个参数都是数组。 sequence :要排序的数组。 ...
Blue Table,Js表格排序插件,排序完成之后需要执行的函数 可以收到一个对象作为参数,前一次排序的对象排序列坐标和当前被排序列坐标
本文仅仅是实现了javascript 对象数组根据对象object key的值排序,算是对自己学习javascript这么久的一个小结,希望大家能够喜欢
javascript表格排序案例(面向对象)案例资料
Blue Table,Js表格排序插件,排序完成之后需要执行的函数 可以收到一个对象作为参数,前一次排序的对象排序列坐标和当前被排序列坐标。
为普通数组和对象数组排序,对象数组排序时,可指定排序所依据的对象属性,汉字将以汉语拼音为序。
本文实例讲述了JavaScript对象数组的排序处理方法。分享给大家供大家参考,具体如下: javascript的数组排序函数 sort方法,默认是按照ASCII 字符顺序进行升序排列。 arrayobj.sort(sortfunction); 参数:sort...