js筆試-接收get請求參數


請編寫一個JavaScript函數,它的用途是接收url中get請求的參數,並返回為對象,

如: 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.數組方法

*-----------------實現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; 
} 
/*--------------------實現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參數'], 就直接獲得GET參數的值*/

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM