Query-string encoding of a Javascript Object

前端 未结 30 3455
渐次进展
渐次进展 2020-11-22 00:23

Do you know a fast and simple way to encode a Javascript Object into a string that I can pass via a GET Request?

No jQuery, no

30条回答
  •  孤城傲影
    2020-11-22 00:53

    I have a simpler solution that does not use any third-party library and is already apt to be used in any browser that has "Object.keys" (aka all modern browsers + edge + ie):

    In ES5

    function(a){
        if( typeof(a) !== 'object' ) 
            return '';
        return `?${Object.keys(a).map(k=>`${k}=${a[k]}`).join('&')}`;
    }
    

    In ES3

    function(a){
        if( typeof(a) !== 'object' ) 
            return '';
        return '?' + Object.keys(a).map(function(k){ return k + '=' + a[k] }).join('&');
    }
    

提交回复
热议问题