Для веб -программистов общение с простыми форматами URL может быть кошмаром. Представьте себе, что в URL -адресе есть много компонентов, которые повлияют на ваш анализ:
・・・ Это начинается с / характер
・・・ Это начинается с //
・・・ Это начинается с?
・・・ Это начинается с #
…и т. д
Если вам нужен абсолютный адрес этого адреса, как судить о обработке и анализе? Это может быть из протокола HTTP или из протокола HTTPS. Это головная боль. К счастью, у нас есть простой способ определить его абсолютный адрес, который состоит в том, чтобы создать элемент, чтобы помочь выполнить эту задачу!
Код JavaScript
Здесь я буду использовать функцию JavaScript, которая возвращает функцию. Есть много преимуществ для этого, которые будут обсуждаться ниже.
var getabSoluteUrl = (function () {var a; return function (url) {if (! a) a = document.createElement ('a'); a.href = url; return a.href;};}) ();Эта функция выглядит немного сложной. Сначала он присваивает функцию переменной, и в этой функции есть другая функция и предопределенная переменная. Кто -то может спросить, почему должна быть встроена функция, и может ли она быть упрощена до этого:
var getabSoluteUrl = function (url) {var a = document.createElement ('a'); a.href = url; вернуть A.Href;}Конечно, этот простой метод написания не может быть осведомлена, но он недостаточно совершенен, потому что, хотя практика внедрения функции увеличивает сложность кода, она может гарантировать, что элемент создается только один раз и может быть использован повторно, сохраняя время и память.
Может быть, кто -то задаст еще один вопрос, задаваясь вопросом, есть ли суждение на вложенной второй функции, почему это необходимо, и почему бы не написать это следующим образом:
var getabSoluteUrl = (function () {var a = document.createElement ('a'); return function (url) {a.href = url; return a.href;};}) ();Это, естественно, способ запуска, и в функции не будет ошибок. Но тонкая вещь заключается в том, что если нет заявления о суждении, при определении этой функции, даже если функция не вызывается каким -либо кодом, элемент A будет инициализирован. С утверждением о суждении, элемент A будет создан, когда он фактически используется, и не будет траты памяти и процессора.
Хорошо, с этим методом, независимо от того, какой адрес URL -адреса вы передаете его, он вернет абсолютный адрес.
Всем, давайте попробуем!
Выше всего содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения, и я надеюсь, что все будут поддерживать Wulin.com больше.