本文实例讲述了jQuery实现的简单排序功能。分享给大家供大家参考,具体如下:
这里演示的冒泡排序, 通过不断的循环找出最小的值,放到新的数组中。每次循环后都将指针指向下一个元素。直到两层循环都结束。
index.html:
<html> <head> <title>Sort</title> <meta content="text/html" charset="utf-8"> <script type="text/javascript" language="javascript" src="js/jquery-1.10.2.js"></script> <script type="text/javascript" language="javascript"> $(function(){ var Sort={}; (function(Sort){ Sort.initData={ toSortArr:[] }; Sort.methods=(function(){ var tmp=''; return { init:function(){ // }, pushData:function(arr){ for(var i in arr){ Sort.initData.toSortArr.push(arr[i]); } }, getData:function(){ return Sort.initData.toSortArr; }, sortData:function(arr){ var tmpArr=new Array(); var tmpNumArr=new Array(); var tmpCharArr=new Array(); var tmpOtherArr=new Array(); for(var i in arr){ var at=arr[i].charCodeAt(0); if( at>=48 && at<=57 ){ tmpNumArr.push(arr[i]); }else{ if(at>=65 && at<=122 ){ tmpCharArr.push(arr[i]); }else{ tmpOtherArr.push(arr[i]); } } } tmpNumArr=Sort.methods.getSort(tmpNumArr); tmpCharArr=Sort.methods.getSort(tmpCharArr); tmpOtherArr=Sort.methods.getSort(tmpOtherArr); tmpArr=Sort.methods.restoreArr(tmpArr,tmpNumArr); tmpArr=Sort.methods.restoreArr(tmpArr,tmpCharArr); tmpArr=Sort.methods.restoreArr(tmpArr,tmpOtherArr); return tmpArr; }, getSort:function(arr){ for(var i=0;i<arr.length;i++){ for(var j=i;j<arr.length;j++){ if(arr[i]>arr[j]){ var tmp=arr[i]; arr[i]=arr[j]; arr[j]=tmp; } } } return arr; }, restoreArr:function(tmpArr,arr){ for(var i=0;i<arr.length;i++){ tmpArr.push(arr[i]); } return tmpArr; } } })(); })(Sort); var tmpArr=new Array(); tmpArr.push('zfsd'); tmpArr.push('qwerewtrer'); tmpArr.push('fxdfhk'); tmpArr.push('123'); tmpArr.push('ssjdf'); tmpArr.push('kl;'); tmpArr.push('我的;'); tmpArr.push('sdg'); tmpArr.push('rt'); Sort.methods.pushData(tmpArr); var t=Sort.methods.sortData(tmpArr); console.log(tmpArr); console.log(t); }); </script> </head> <body> <input id="myFormFlow" type="button" value="进入表单填写"> </body> </html>
此排序的核心代码:
var arr=new Array(); for(var i=0;i<arr.length;i++){ for(var j=i;j<arr.length;j++){ if(arr[i]>arr[j]){ var tmp=arr[i]; arr[i]=arr[j]; arr[j]=tmp; } } }
更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery排序技巧总结》、《jQuery操作DOM节点方法总结》、《jQuery扩展技巧总结》、《jQuery常用插件及用法总结》、《jQuery拖拽特效与技巧总结》、《jQuery表格(table)操作技巧汇总》、《jquery中Ajax用法总结》、《jQuery常见经典特效汇总》、《jQuery动画与特效用法总结》及《jquery选择器用法总结》
希望本文所述对大家jQuery程序设计有所帮助。