Другой напрашивающийся вариант, не уверен что лучше, но все же:
var o = {
prm1: 'dat1',
prm2: 'dat2',
prm3: 'dat3',
prm4: 'dat4'
};
alert(toQueryString(o));
function toQueryString(parameters){
var pairs = [];
for (var key in parameters) {
pairs.push(key + '=' + parameters[key]);
}
return '?' + pairs.join('&');
};