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-05nodeType屬性返回被選節(jié)點的節(jié)點類型介紹
這篇文章主要介紹了nodeType屬性返回被選節(jié)點的節(jié)點類型。需要的朋友可以過來參考下,希望對大家有所幫助2013-11-11JavaScript函數(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