Converta uma string de consulta em uma matriz associativa em js

Uma função simples para converter strings de consulta em uma matriz associativa usando javascript.

var queryConvert = function(){
var queryStr = window.location.search,
queryArr
= queryStr.replace('?','').split('&'),
queryParams
= [];

for (var q = 0, qArrLength = queryArr.length; q < qArrLength; q++) {
var qArr = queryArr[q].split('=');
queryParams
[qArr[0]] = qArr[1];
}

return queryParams;
},

Esta string de consulta -? Location = us & state = georgia – deve retornar – [location: us, state: georgia]

O que você acha? Algum método melhor?