jQuery实现的简单排序功能示例【冒泡排序】


Posted in Javascript onJanuary 13, 2017

本文实例讲述了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程序设计有所帮助。

Javascript 相关文章推荐
繁简字转换功能
Jul 19 Javascript
JavaScript写的一个DIV 弹出网页对话框
Aug 14 Javascript
使用requestAnimationFrame实现js动画性能好
Aug 06 Javascript
JavaScript中的函数(二)
Dec 23 Javascript
实例代码详解javascript实现窗口抖动及qq窗口抖动
Jan 04 Javascript
浅析$(function) ready和onload 的区别
Sep 03 Javascript
jQuery文本框得到与失去焦点动态改变样式效果
Sep 08 Javascript
easyui关于validatebox实现多重规则验证的方法(必看)
Apr 12 Javascript
微信小程序引用公共js里的方法的实例详解
Aug 17 Javascript
webpack实现一个行内样式px转vw的loader示例
Sep 13 Javascript
小程序组件之自定义顶部导航实例
Jun 12 Javascript
vue路由插件之vue-route
Jun 13 Javascript
js实现淡入淡出轮播切换功能
Jan 13 #Javascript
js仿百度音乐全选操作
Jan 13 #Javascript
js实现tab选项卡切换功能
Jan 13 #Javascript
js制作可以延时消失的菜单
Jan 13 #Javascript
原生js实现下拉框功能(支持键盘事件)
Jan 13 #Javascript
js实现自动轮换选项卡
Jan 13 #Javascript
Javascript 使用ajax与C#获取文件大小实例详解
Jan 13 #Javascript
You might like
php过滤危险html代码
2008/08/18 PHP
Drupal 添加模块出现莫名其妙的错误的解决方法(往往出现在模块较多时)
2011/04/18 PHP
php中实现简单的ACL 完结篇
2011/09/07 PHP
比较discuz和ecshop的截取字符串函数php版
2012/09/03 PHP
Symfony数据校验方法实例分析
2015/01/26 PHP
php中执行系统命令的方法
2015/03/21 PHP
如何写php守护进程(Daemon)
2015/12/30 PHP
基于win2003虚拟机中apache服务器的访问
2017/08/01 PHP
PHP框架Laravel中使用UUID实现数据分表操作示例
2018/05/30 PHP
javascript或asp实现的判断身份证号码是否正确两种验证方法
2009/11/26 Javascript
JS 添加网页桌面快捷方式的代码详细整理
2012/12/27 Javascript
js实现页面转发功能示例代码
2013/08/05 Javascript
JavaScript实现简单的二级导航菜单实例
2015/04/15 Javascript
AngularJS通过$sce输出html的方法
2016/09/22 Javascript
微信小程序 出现47001 data format error原因解决办法
2017/03/10 Javascript
JS给按钮添加跳转功能类似a标签
2017/05/30 Javascript
Django+Vue实现WebSocket连接的示例代码
2019/05/28 Javascript
五分钟搞懂Vuex实用知识(小结)
2019/08/12 Javascript
JavaScript中的几种继承方法示例
2020/12/06 Javascript
Python中字典映射类型的学习教程
2015/08/20 Python
python编程实现归并排序
2017/04/14 Python
Python2与python3中 for 循环语句基础与实例分析
2017/11/20 Python
python 基本数据类型占用内存空间大小的实例
2018/06/12 Python
Python实现使用request模块下载图片demo示例
2019/05/24 Python
在Pandas中处理NaN值的方法
2019/06/25 Python
python+Selenium自动化测试——输入,点击操作
2020/03/06 Python
python爬虫中PhantomJS加载页面的实例方法
2020/11/12 Python
python实现企业微信定时发送文本消息的示例代码
2020/11/24 Python
CSS3 选择器 基本选择器介绍
2012/01/21 HTML / CSS
Puritan’s Pride(普丽普莱)官方网站:美国最大最全的保健品公司之一
2016/10/23 全球购物
台湾母婴用品购物网站:Infant婴之房
2018/06/15 全球购物
I.T集团香港官方商城:ITeSHOP.com Hong Kong
2019/02/15 全球购物
eHarmony英国:全球领先的认真恋爱约会平台之一
2020/11/16 全球购物
工程现场管理求职自荐信
2013/10/02 职场文书
政法大学毕业生自荐信范文
2014/01/01 职场文书
应用外语系自荐信
2014/06/26 职场文书