javascript排序函數(shù)實現(xiàn)數(shù)字排序
更新時間:2015年06月26日 11:16:33 投稿:hebedich
這篇文章主要介紹了javascript排序函數(shù)實現(xiàn)數(shù)字排序的相關(guān)資料,附上示例,需要的朋友可以參考下
javascript排序函數(shù)實現(xiàn)數(shù)字排序
<script>
function SortNumber(obj,func) //定義通用排序函數(shù)
{
//參數(shù)驗證,如果第一個參數(shù)不是數(shù)組或第二個參數(shù)不是函數(shù)則拋出異常
if(!(obj instanceof Array) || !(func instanceof Function))
{
var e = new Error(); //生成錯誤信息
e.number = 100000; //定義錯誤號
e.message = "參數(shù)無效"; //錯誤描述
throw e; //拋出異常
}
for(n in obj) //開始排序
{
for(m in obj)
{
if(func( obj[n],obj[m]) ) //使用回調(diào)函數(shù)排序,規(guī)則由用戶設(shè)定
{
var tmp = obj[n]; //創(chuàng)建臨時變量
obj[n] = obj[m]; //交換數(shù)據(jù)
obj[m] = tmp;
}
}
}
return obj; //返回排序后的數(shù)組
}
function greatThan(arg1,arg2) //回調(diào)函數(shù),用戶定義的排序規(guī)則
{
return arg1 < arg2;
}
try
{
var numAry = new Array(5,8,6,32,1,45,6,89,9); //生成一數(shù)組
document.write("<li>排序前:"+numAry); //輸出排序前的數(shù)組
SortNumber(numAry,greatThan); //調(diào)用排序函數(shù)
document.write("<li>排序后:"+numAry); //輸出排序后的數(shù)組
}
catch(e)
{
alert(e.number+":"+e.message);
}
</script>
以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。
相關(guān)文章
Javascript操縱Cookie實現(xiàn)購物車程序
Javascript操縱Cookie實現(xiàn)購物車程序...2006-11-11
如何基于uni-app實現(xiàn)微信小程序一鍵登錄與退出登錄功能
uni-app 是使用vue的語法+小程序的標簽和API的一套框架,是一套代碼多端使用,目前是大前端的一種趨勢,下面這篇文章主要給大家介紹了關(guān)于如何基于uni-app實現(xiàn)微信小程序一鍵登錄與退出登錄功能的相關(guān)資料,需要的朋友可以參考下2022-09-09
JS注釋所產(chǎn)生的bug 即使注釋也會執(zhí)行
寫js時出現(xiàn)個bug一直提示我JAVA類中的一個屬性沒有,可是明明注釋掉了,后來才知道,JS里即使注釋也會執(zhí)行2013-11-11
Javascript ES6中數(shù)據(jù)類型Symbol的使用詳解
Symbol類型是es6新增的一個數(shù)據(jù)類型,Symbol值通過Symbol函數(shù)生成Symbol類型是保證每個屬性的名字都是獨一無二的,對于一個對象由對個模塊構(gòu)成的情況非常有用,本文主要介紹了Javascript ES6中數(shù)據(jù)類型Symbol使用的相關(guān)資料,需要的朋友可以參考下。2017-05-05

