웹 프로그래머의 경우 간단한 URL 형식을 다루는 것이 악몽 일 수 있습니다. URL에는 분석에 영향을 줄 수있는 많은 구성 요소가 있다고 상상해보십시오.
/ 문자로 시작합니다
・・・ //부터 시작합니까?
・・・ a로 시작합니까?
・・・ #로 시작합니까?
…등
이 주소의 절대 주소를 원할 때 처리 및 구문 분석을 판단하는 방법은 무엇입니까? HTTP 프로토콜 또는 HTTPS 프로토콜에서 나올 수 있습니다. 두통입니다. 다행히도, 우리는 절대 주소를 결정할 수있는 쉬운 방법을 가지고 있습니다. 즉,이 작업을 완료하는 데 도움이되는 요소를 만드는 것입니다!
자바 스크립트 코드
여기서는 함수를 반환하는 JavaScript 함수를 사용합니다. 이를 수행하는 데는 많은 이점이 있으며 아래에서 설명 할 것입니다.
var getAbsoluteUrl = (function () {var a; return function (url) {if (! a) 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;}물론,이 간단한 글쓰기 방법은 잘못 계산 될 수는 없지만 충분히 완벽하지는 않습니다. 기능을 포함시키는 관행은 코드의 복잡성을 증가 시키지만 A 요소가 한 번만 생성되어 재사용되어 시간과 기억을 절약 할 수 있도록 할 수 있기 때문입니다.
어쩌면 누군가가 다른 질문을 할 것입니다. 중첩 된 두 번째 기능에 판단이 있는지 궁금해, 왜 필요한지, 그리고 다음과 같이 쓰지 않는 이유는 다음과 같이 쓰지 않겠습니까?
var getAbsoluteUrl = (function () {var a = document.createElement ( 'a'); return function (url) {a.href = url; return A.Href;};}) ();이것은 당연히 실행하는 방법이며, 함수에는 오류가 없습니다. 그러나 미묘한 점은이 기능을 정의 할 때 IF 판단 명령문이 없으면 함수를 코드로 호출하지 않더라도 A 요소가 초기화된다는 것입니다. IF 판단 명령문을 사용하면 A 요소가 실제로 사용될 때 생성되며 메모리 및 CPU 낭비가 없습니다.
자,이 방법을 사용하면 어떤 종류의 URL 주소를 전달하든 절대 주소를 반환합니다.
모두, 시도해 봅시다!
위는이 기사의 모든 내용입니다. 모든 사람의 학습에 도움이되기를 바랍니다. 모든 사람이 wulin.com을 더 지원하기를 바랍니다.