Мой результат такой:
var param = [], locSearch = location.search;
if(locSearch != "") {
param = (locSearch.substr(1)).split("&");
for(var x = 0; x < param.length; x++) {
var temp = param[x].split("=");
param[temp[0]] = temp[1];
};
};
Только вот сразу отмечу что я пока не взял во внимание '#'. location.search не берет во внимание данные начиная с '#'. И это хорошо.
UPD: Вышло что-то очень смешное. В результате получился массив, в котором также содержаться объекты.
При обращении к переменной
param через консоль:
param // return ["ech=1", "psi=OyLWT-qYJIzPsgbiwbnODw.1339433538360.3", "emsg=NCSR", "noj=1", "ei=OyLWT-qYJIzPsgbiwbnODw"]
В тоже время доступны и объекты:
param.psi // return "OyLWT-qYJIzPsgbiwbnODw.1339433538360.3"
Вот я и думаю - это хорошо или плохо? Добавить ли прилагательный массив?