js筆試題-接收get請求參數(shù)
題目
請編寫一個JavaScript函數(shù),它的用途是接收url中g(shù)et請求的參數(shù),并返回為對象,
如: var url = “https://i.cnblogs.com/EditPosts.aspx?opt=1″。
本題考察了js如何獲得url為字符串,以及字符串處理的方法。
1.首先想到正則
function getQueryString(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
var r = window.location.search.substr(1).match(reg);
if (r != null) return unescape(r[2]); return null;
}
2.數(shù)組方法
*-----------------實現(xiàn)1--------------------*/
function GetRequest() {
var url = location.search; //獲取url中"?"符后的字串
var theRequest = new Object();
if (url.indexOf("?") != -1) {
var str = url.substr(1);
strs = str.split("&");
for(var i = 0; i < strs.length; i ++) {
theRequest[strs[i].split("=")[0]]=unescape(strs[i].split("=")[1]);
}
}
return theRequest;
}
/*--------------------實現(xiàn)2(返回 $_GET 對象, 仿PHP模式)----------------------*/
var $_GET = (function(){
var url = window.document.location.href.toString();
var u = url.split("?");
if(typeof(u[1]) == "string"){
u = u[1].split("&");
var get = {};
for(var i in u){
var j = u[i].split("=");
get[j[0]] = j[1];
}
return get;
} else {
return {};
}
})();
/*第2種方式, 使用時, 可以直接 $_GET['get參數(shù)'], 就直接獲得GET參數(shù)的值*/
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
JavaScript設(shè)計模式開發(fā)中組合模式的使用教程
組合模式可以理解為樹狀結(jié)構(gòu),因此組合模式適合對大批對象的操作,特別是層次結(jié)構(gòu)分明的,下面我們就來看看號稱面向?qū)ο蟮腏avaScript設(shè)計模式開發(fā)中組合模式的使用教程2016-05-05
nodeType屬性返回被選節(jié)點的節(jié)點類型介紹
這篇文章主要介紹了nodeType屬性返回被選節(jié)點的節(jié)點類型。需要的朋友可以過來參考下,希望對大家有所幫助2013-11-11
JavaScript函數(shù)的調(diào)用以及參數(shù)傳遞
這篇文章主要介紹了JavaScript函數(shù)的調(diào)用以及參數(shù)傳遞,是JavaScript入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下2015-10-10
如何獲取JQUERY AJAX返回的JSON結(jié)果集實現(xiàn)代碼
我寫了個方法,用于查詢結(jié)果,但debug過程中發(fā)現(xiàn)結(jié)果集有數(shù)據(jù),我如何通過變量獲取呢2012-12-12

