Попытка разбора и разделения хэша URL, сложная - PullRequest
0 голосов
/ 06 июня 2019

Мне нужно получить некоторую информацию из URL-хэша ... но структура немного сложна и повторяется, чтобы легко с помощью Regex ... Надеюсь, кто-то умнее, чем я могу понять это ...

В JS я добавляю выборки, которые после изменения перезагружают страницу с обновленным хешем ... с обновлением страницы, необходимо проанализировать новое расположение окна, чтобы правильно соответствовать ранее сделанным выборкам.

URL выглядит так:

#dynamic/{"sidebar":[{"facetid":8,"data":{"value":"bell"}},{"facetid":9,"data":{"value":"brooks"}}],"searchString":"SearchText","ver":1}
var parser = document.createElement('a');
parser.href = window.location.href;
var StringSource = (parser.hash).replace(/%22/g, '"');
(StringSource.split("}",StringSource.length))

Что мне действительно нужно, так это массив объектов для facetid с соответствующим значением ... и затем просто переменная для значения "searchString" ...

Я ужасен, когда дело доходит до манипуляций с Regex и String этого уровня

1 Ответ

0 голосов
/ 06 июня 2019

Вы можете сделать это следующим образом:

var sec = parser.href.split(/\//)
var json = JSON.parse(sec[1])

1-я строка отделяет динамику # от JSON-части

2-я строка анализирует JSON-часть в пригодную для использования форму дляJSON.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...