我需要将json对象转换为url形式,例如:“ parameter = 12&asd = 1”
我做到了:
var data = { 'action':'actualiza_resultado', 'postID': 1, 'gl': 2, 'gl2' : 3 }; var string_=JSON.stringify(data); string_=string_.replace(/{/g, ""); string_=string_.replace(/}/g, ""); string_=string_.replace(/:/g, "=") string_=string_.replace(/,/g, "&"); string_=string_.replace(/"/g, "");
但是我想知道是否在javascript或JSON对象中有任何功能可以做到这一点?
jQuery提供的param功能完全可以做到这一点。如果您不使用jquery,请看一下source。
param
基本上,它是这样的:
url = Object.keys(data).map(function(k) { return encodeURIComponent(k) + '=' + encodeURIComponent(data[k]) }).join('&')
2019更新 :现在有一个内置对象URLSearchParams用于这种事情:
URLSearchParams
let myParams = {'foo': 'hi there', 'bar': '???'}; let u = new URLSearchParams(myParams).toString(); console.log(u);