javascript中的split和substring以及indexof方法...
时间:2010-08-13 来源:byondocean
Javascript中的split和substring以及indexof方法
使用方法: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>
方法二:
function loadQueryString()
{
var s = window.location.href;
var n = s.indexOf("?");
if (n>=0)
s = s.substring(n+1);
var valuelist = s.split("&");
for (var i=0; i < valuelist.length; i++)
{
var pair = valuelist[i].split("=");
if (pair.length > 1)
{
Request[pair[0]] = pair[1];
}
}
}
var > if(id=="")
{
WCMNavigation.openItem(1);
}
else
{
var Request = new Array();
loadQueryString();
alert(Request["outid"]);
}
方法三:
<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>
方法四:
我有一个非正规办法,不怕大家笑话,也说出来吧!
在后台代码中,设置一个protected或public的变量id,然后在page_load事件中用id=Request["id"];在页面中用<% Response.Write("id");%>得到该值。
值。