一尘不染

是否有将json转换为url参数的本机函数?

json

我需要将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对象中有任何功能可以做到这一点?


阅读 334

收藏
2020-07-27

共1个答案

一尘不染

jQuery提供的param功能完全可以做到这一点。如果您不使用jquery,请看一下source

基本上,它是这样的:

url = Object.keys(data).map(function(k) {
    return encodeURIComponent(k) + '=' + encodeURIComponent(data[k])
}).join('&')

2019更新 :现在有一个内置对象URLSearchParams用于这种事情:

let myParams = {'foo': 'hi there', 'bar': '???'};



let u = new URLSearchParams(myParams).toString();



console.log(u);
2020-07-27