在get方式的參數傳遞中,常常需要將JavaScript對象,轉換成查詢字符串,比如:
{ method: 'get', state: '200' }
會轉換成
?method=get&state=200
方法1:用JavaScript
serialize = function(obj) { var str = []; for (var p in obj) if (obj.hasOwnProperty(p)) { str.push(encodeURIComponent(p) + "=" + encodeURIComponent(obj[p])); } return str.join("&");}console.log(serialize({ foo: "hi there", bar: "100%"}));
輸出:
// foo=hi%20there&bar=100%25
方法2: 用jQuery插件
jQuery的$.param內置此方法,可直接使用:
var data = { method: 'get', state: '200' }var send = $.param(data)console.log(send)// method=get&state=200
jQuery 的get方法會默認使用 $.param 轉換的參數:
$.get('/test', { a: 1, b: 1}) > GET http://ourjs.com/test?a=1&b=1 404 (Not Found)
總結
以上所述是小編給大家介紹的用jQuery將JavaScript對象轉換為querystring查詢字符串的方法,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復大家的!
新聞熱點
疑難解答