JavaScript: build an HTTP query string

by Boban Stojanovski

HTML

<p id="output">&nbsp;</p>

JavaScript

var httpBuildQuery = function(params) {

    if (typeof params === 'undefined' || typeof params !== 'object') {
        params = {};
        return params;
    }

    var query = '?';
    var index = 0;   
    var index2 = 0;
    
    for (var i in params) {
        
        index++;
        var param = i;
        var value = params[i];
        
        if(value){
        	index2++;
          if (index2 == 1) {
              query += param + '=' + value;
          } else {

              query += '&' + param + '=' + value;
          }
        }       
    }

    return query; 
};

 
var output = document.getElementById('output');
 
    var parameters = {
    		vv: '',
        a: 'foo',
        lll: '',
        b: 1,
        c: 'test'
    };

    var URL = httpBuildQuery(parameters);
    output.firstChild.nodeValue = URL;