<script>

function  getPageNumRange(pagenumstr)
{
var pages=pagenumstr.split(";");
pages.sort(function(a,b){
return a-b;
});
var delta=0;
var lianxiu=new Array();
var bulianxiu=new Array();
for(var i=0;i<pages.length;i++){
delta=0;
delta=(1*pages[i+1])-(1*pages[i]);
if(1==delta)
{ //连续
lianxiu.push(pages[i]);
lianxiu.push(pages[i+1]);
}
else
{
if(delta>1)
{ //不连续
lianxiu.push("|");
if(lianxiu.indexOf(pages[i])==-1)
bulianxiu.push(pages[i]);
}
} if (i==pages.length-1){
if(lianxiu.indexOf(pages[i])==-1)
{
bulianxiu.push(pages[i]);
}
}
} lianxiuStr=lianxiu.toString().replace(/\|\,/g,"|").replace(/\,\|/g,"|");
var lianxiuArr=lianxiuStr.split("|");
var ResultStr1="";
for(var i=0;i<lianxiuArr.length;i++){
var yema=lianxiuArr[i];
if(""!=yema)
{
var yemaArr=yema.split(","); if(""==ResultStr1)
{
ResultStr1=yemaArr[0]+"-"+yemaArr[yemaArr.length-1];
}
else
{
ResultStr1=ResultStr1+";"+yemaArr[0]+"-"+yemaArr[yemaArr.length-1];
}
}
}//for var resultPageNums="";
var resultList=ResultStr1.split(";"); for(var i=0;i<bulianxiu.length;i++){
resultList.push(bulianxiu[i]);
} resultList.sort(function(a,b){
var v1,v2;
if(a.indexOf("-")!=-1)
{
v1=a.substr(0,a.indexOf("-"))*1;
}else v1=a*1; if(b.indexOf("-")!=-1)
{
v2=b.substr(0,b.indexOf("-"))*1;
}else v2=b*1;
return v1-v2;
});
return resultList.toString();
} alert(getPageNumRange("9;10;17;18;19;21;23;25;26;27;28;30;36;37;38;40")); </script>

getPageNumRange的更多相关文章

随机推荐

  1. 【转】Linux环境进程间通信(五) 共享内存(上)

    转自:https://www.ibm.com/developerworks/cn/linux/l-ipc/part5/index1.html 采用共享内存通信的一个显而易见的好处是效率高,因为进程可以 ...

  2. Qt控制流简析

    前言: Qt库及其绑定python语言的PySide库.PyQt库在圈中已经是TD的标配了,Qt提供了多种快速绘制图形窗口的方式.但正是因为这个原因,导致很多TD局限在设计窗口外观的桎梏中,而忽略了Q ...

  3. Guava - Ordering

    guava中Ordering类是对Compartor接口的实现,但它也只是一个抽象类. 当调用Ordering.natural()方法时,它就会返回一个NaturalOrdering的对象,Natur ...

  4. CentOS下puppet安装

    简介 Puppet是开源的基于Ruby的系统配置管理工具,puppet是一个C/S结构, 当然,这里的C可以有很多,因此,也可以说是一个星型结构. 所有的puppet客户端同一个服务器端的puppet ...

  5. 「Mobile Testing Summit China 2017」第三届中国移动互联网测试开发大会-讲师征集

    时至北京盛夏,一场由 TesterHome 主办的关于移动互联网测试技术的盛会正在紧锣密鼓的筹备中.只要你关注软件质量,热爱测试,期待学习,都欢迎你加入这次移动测试技术大会中和我们一起分享经验.探讨话 ...

  6. PAT 甲级 1035 Password (20 分)

    1035 Password (20 分) To prepare for PAT, the judge sometimes has to generate random passwords for th ...

  7. Kong(v1.0.2)代理参考

    介绍 在本文中,我们将通过详细解释Kong的路由功能和内部工作原理来介绍它的代理功能. Kong公开了几个接口,可以通过两个配置属性进行调整: proxy_listen,它定义了一个地址/端口列表,K ...

  8. ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (13)解答

    我在使用mysqll客户端连接我的mysql服务器的时候,出现了上述的问题.我的操作系统是ubuntu,安装版本是对应的64位服务器.我的服务器的启动方式是sudo service mysql sta ...

  9. sklearn错误

    1.No module named 'sklearn.cross_validation' sklearn.cross_validation会报错,关键在于新版本的sklearn没有cross_vali ...

  10. java 读取外部和source下配置文件

    import java.io.File; import java.io.FileInputStream; import java.net.URL; import java.util.Map; impo ...