Сегодня я нашел следующий код:
var baseHref = document.createElement('a');
baseHref.href = this.baseURL;
baseHref = baseHref.pathname;
где this.baseURL
- строка.
Кажется, что он использует преимущества некоторых функций преобразования, которые выполняются при установке href
или чтения pathname
. Это просто предположение. Что это за функциональность? Или какие другие виды использования могут быть?
Создание привязки и передача URL-адреса использует браузеры, созданные в парсере для URL-адресов, поэтому можно легко возвращать различные части URL-адреса без регулярных выражений или строковых манипуляций.
Имя pathname
... ну, имя пути после протокола и имени хоста и т.д.
Небольшой пример: некоторые части, которые можно вернуть таким образом
var baseHref = document.createElement('a');
baseHref.href = 'https://www.stackoverflow.com:3333/page/that/goes/somewhere?querystring=test#hash';
console.log('protocol : ', baseHref.protocol);
console.log('host : ', baseHref.host);
console.log('hostname : ', baseHref.hostname);
console.log('port : ', baseHref.port);
console.log('pathname : ', baseHref.pathname);
console.log('querystring : ', baseHref.search);
console.log('hash : ', baseHref.hash);
Это действительно просто аккуратный трюк для анализа URL-адреса с помощью браузера.
baseURL
? Кажется, это запутанный способ получить вашу текущую страницу