Введение
В этом практическом занятии мы изучим, как объединять сегменты URL и нормализовать полученный URL с использованием JavaScript. Практическое занятие проведет вас по процессу использования различных регулярных выражений для удаления двойных косых черточек, добавления правильных косых черточек для протокола, удаления косых черточек перед параметрами, объединения параметров с помощью '&' и нормализации первого разделителя параметров. В конце этого практического занятия вы сможете эффективно объединять и нормализовать сегменты URL с использованием JavaScript.
Объединение и нормализация сегментов URL
Для объединения заданных сегментов URL и нормализации полученного URL следуйте шагам ниже:
- Используйте
Array.prototype.join(), чтобы объединить сегменты URL. - Используйте серию вызовов
String.prototype.replace()с различными регулярными выражениями для нормализации полученного URL путём:- удаления двойных косых черточек;
- добавления правильных косых черточек для протокола;
- удаления косых черточек перед параметрами;
- объединения параметров с помощью
'&'и нормализации первого разделителя параметров.
Используйте сниппет кода ниже для объединения и нормализации сегментов URL:
const URLJoin = (...args) =>
args
.join("/")
.replace(/[\/]+/g, "/")
.replace(/^(.+):\//, "$1://")
.replace(/^file:/, "file:/")
.replace(/\/(\?|&|#[^!])/g, "$1")
.replace(/\?/g, "&")
.replace("&", "?");
Пример использования:
URLJoin("http://www.google.com", "a", "/b/cd", "?foo=123", "?bar=foo");
// 'http://www.google.com/a/b/cd?foo=123&bar=foo'
Резюме
Поздравляем! Вы завершили практическое занятие по объединению сегментов URL. Вы можете выполнить больше практических занятий в LabEx, чтобы улучшить свои навыки.