Распарсивание урла
Нужно распарсить урл так, что бы получить объект вида
имя_гет_параметра: значение_гет_параметра Например для урла /forum/newthread.php?do=newthread&f=3 надо на выходе получить что-то типа obj = { do: newthread, f: 3 } И все было бы не сложно, но я не представляю как без ругулярки (одним split тут не обойтись) разобрать это дело. А с другой стороны...может в современных браузерах уже есть такой метод, просто я о нём не знаю. Есть? Если нету, помогите написать. Хотя бы регулярку. |
var Loc = location.search.substr(1);
Loc = Loc.split('&');
for(i=0;i<Loc.length;i++)
{
Loc[i] = Loc[i].split('=');
alert(Loc[i][0]+','+Loc[i][1]);
}
|
function parseURL ( url ) {
var re = /([^?=&]+)=([^?=&]+)/gi;
var obj = {};
while ( ( curr = re.exec( url ) ) != null ) {
obj[curr[1]] = curr[2];
}
return obj
}
var myUrl = '/forum/newthread.php?do=newthread&f=3';
// вызывать так:
var obj = parseURL ( myUrl );
в obj то что просили ;) |
| Часовой пояс GMT +3, время: 08:11. |