当前位置: 首页 > 图文教程 > 网络编程 > Javascript > Javascript中的Split使用方法与技巧

Javascript
阻止JavaScript事件冒泡传递(cancelBubble 、stopPropagation)
(转载)JavaScript中匿名函数,函数直接量和闭包
简单的无缝滚动程序-仅几行代码
Javascript中的数学函数集合
javascript之大字符串的连接的StringBuffer 类
javascript之对系统的toFixed()方法的修正
用javascript实现自定义标签
js在客户端验证密码强度,兼容FireFox和IE
javascript背景颜色按时变换
脚本分析、压缩、混淆工具 JSA新版本发布,压缩效率提高大约10%
javascript语句中的CDATA标签的意义
用javascript实现分割提取页面所需内容
网上抓的一个特效
js之点击 超连接,提示一个层.点击空白.层消失
模拟用户操作Input元素,不会触发相应事件
弹出广告特效代码(一个IP只弹出一次)
(仅IE下有效)关于checkbox 三态
JavaScript Archive Network 集合
关于__defineGetter__ 和__defineSetter__的说明
textContent在Firefox下与innerText等效的属性

Javascript中的Split使用方法与技巧


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 147 ::
收藏到网摘: n/a

以前很少用Split方法,今天找了些资料。
使用方法:myArray=string.split("|")
说明:"|"为切割特征字符,string为要切割的字符串,myArray为切割结果(存放于数组),使用方法myArray[n],n=myArray.length。
起先我还用asp中的思维在考虑怎么得到myArray的最大下标呢,肯定不是Ubound(myArray),找了半天没找到,最后知道了,其实在Javascript中数组都有一个length属性,myArray.length-1也就是myArray数组的最大下标,很简单吧,想的到真容易,想不到真是难。
来看一个使用split的实例:用javascript获得地址栏参数。
复制代码 代码如下:

<script language="JavaScript">
<!--
function Request(strName)
{
var strHref = "www.nextway.cn/index.htm?a=1&b=1&c=Split实例";
var intPos = strHref.indexOf("?");
var strRight = strHref.substr(intPos + 1);
var arrTmp = strRight.split("&");
for(var i = 0; i < arrTmp.length; i++)
{
var arrTemp = arrTmp[i].split("=");
if(arrTemp[0].toUpperCase() == strName.toUpperCase()) return arrTemp[1];
}
return "";
}
alert(Request("a"));
alert(Request("b"));
alert(Request("c"));
//-->
</script>

获得地址栏参数还有另外一种方法,正则表达式:
复制代码 代码如下:

<script>
String.prototype.getQuery = function(name)
{
  var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
  var r = this.substr(this.indexOf("\?")+1).match(reg);
  if (r!=null) return unescape(r[2]); return null;
}
var str = "www.nextway.cn/index.htm?a=1&b=1&c=Split实例";
alert(str.getQuery("a"));
alert(str.getQuery("b"));
alert(str.getQuery("c"));
</script>