@mrzgt

Как substring правильно извлеките символы?

есть страницы https://site/ua-search/page-2?search=футболка
while (i <= TotalPages) {
pages.push(href.substring(0,href.indexOf("page-")+5) + i);
i++;
}

получаю https://site/ua-search/page-2, https://site/ua-search/page-3, https://site/ua-search/page-4
а нужно https://site/ua-search/page-2?search=футболка
  • Вопрос задан
  • 174 просмотра
Решения вопроса 1
@psiklop
Если нужен массив таких же ссылок с нарастающими "pages", тогда вариант в цикле еще добавить все после знака ? еще раз сделав substring.

let TotalPages = 10, pages = [], i=0, href="https://site/ua-search/page-2?search=футболка";
while (++i <= TotalPages)
pages.push(href.substring(0,href.indexOf("page-")+5) + i + href.substring(href.indexOf("?")));


Или через replace
let TotalPages = 11, pages = [], i=0, href="https://site/ua-search/page-2?search=футболка";
while (++i <= TotalPages)
pages.push(href.replace(/\/page-\d+\?/, "/page-"+i+"?"));


P.S. Но так пагинацию не делают. URL не строят из текущей страницы и меняя в ней цифру, это велосипед в буквальном смысле.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы