javaScript 中的 slice 函数,对于array对象的slice函数,返回一个数组的一段。(仍为数组)
arrayObj.slice(start, [end])
参数:
arrayObj,必选项。一个 Array 对象。
start,必选项。arrayObj 中所指定的部分的开始元素是从零开始计算的下标。
end,可选项。arrayObj 中所指定的部分的结束元素是从零开始计算的下标。
说明:
slice 方法返回一个 Array 对象,其中包含了 arrayObj 的指定部分。
slice 方法一直复制到 end 所指定的元素,但是不包括该元素。如果 start 为负,将它作为 length + start处理,此处 length 为数组的长度。如果 end 为负,就将它作为 length + end 处理,此处 length 为数组的长度。如果省略 end ,那么 slice 方法将一直复制到 arrayObj 的结尾。如果 end 出现在 start 之前,不复制任何元素到新数组中。
示例:
在下面这个例子中,除了最后一个元素之外,myArray 中所有的元素都被复制到 newArray 中:
newArray = myArray.slice(0, -1) --------str的slice
<script type="text/javascript"> function Request(valuename,testurl) { var rtnval ; //获取当前网页地址信息:85/test/asp/Crmkorea_co_kr/test.htm?PARA1=ATEST //var nowAddress = unescape(location.href) ; var nowAddress = testurl var parameters = new Array() ; alert(nowAddress.slice(nowAddress.indexOf("?")+1, nowAddress.length)) parameters = (nowAddress.slice(nowAddress.indexOf("?")+1, nowAddress.length)).split("&") ; for(var i=0;i<parameters.length;i++) { alert(i + "--" + parameters[i]) if(parameters[i].indexOf(valuename) != -1) { rtnval = parameters[i].split("=")[1] ; if(rtnval == undefined || rtnval == null) { rtnval = "" ; } return rtnval ; } else{ // alert(parameters[0].indexOf(valuename)) // alert("request must from :" + valuename) } } return "" //alert(rtnval) ; } var myaddr = "http://www.yoursiteweb.com/?para1=test1&PARA1=test2" alert(Request("PARA1",myaddr)) //检查地址中是否包含参数para1,并返回该参数的值 </script>