현재 URL의 정보로 접속할 수 있는 주소를 참조한다.

Script [propVal=..].propName;
[propVal=]..propName;
HTML 없다.
인수
window.document.location. : (개체)

window, document은 선택적인 요소이며, window 참조는 이름(windowReference)이며, self, parent 등 윈도우를 지칭하는 이름도 가능하다.
document는 윈도우의 문서를 지칭한다.
window 혹은 document, 혹은 두가지를 다 생략하여도 된다.
생갹되면 현재 윈도우, 현재의 문서로 간주한다.
location은 필수요소이고 지정된 window, document 개체의 완전한 주소(URL)을 갖는다.

propertyName : (link 개체의 속성)

아래 속성(property)의 하나이다. 생략하면 완전한 주소(URL)를 반환한다.

메서드(method)도 이에 준한다.

구성

location개체는 window 개체에 포함 되어있고 frame으로 구성된 페이지의 각 frame은 고유의 location 개체(URL)를 가진다.
windowReferencewindow의 참조명이며 var windowReference=window.open(...)로 생성된다.

주소의 양식

모든 주소(URL)는 기본적으로 다음과 같은 양식을 갖고, 속성들은 일정 부분의 부분 문자열이다.

<protocol>//<host>[:<port>]/<pathname>[<hash>][<search>]
http://server.com[:portName]/pathName/fileName[#hashName][?searchString]

사용

Javascript로 수정이 가능하므로 location 속성을 이용하여 location 개체의 문자열을 할당함으로서 개체의 주소(URL)를 변경시켜 윈도우나 프레임의 내용을 변경시켜 표현할 수 있다.

<SCRIPT>document.write('window.location="'+document.location+'"')</SCRIPT>

특기

location 개체는 window 개체의 일 부분으로 window.location 속성으로 접속할 수 있다.

다른 속성들은 주소의 일부를 포함하는데 반해 href 속성은 완전한 주소(URL)를 포함한다. location 개체의 디폴트 속성은 location.href 이다.

속성이 지정되면 브라우저는 즉시 그 주소로 항해한다.

이 개체는 IE3.0부터 스크립트가 적용된다.

적용
개체scriptHTML규격IE


설명을 위한 예제

<SCRIPT>oObj=location</SCRIPT>

예제hash 속성 IE3.02 NS2 (<A href=URLString#sVal> 애트리뷰트)
⇒ 개체 href 속성이나 anchor.name으로 지정된 문자열의 마지막 부분에 # 다음의 부분인 부위 지정자의 문자열을 반환하거나 지정한다.
문법: .hash[=sVal]
코드: document.write(oObj.hash); 결과: // hash를 지정하면 그 부위로 이동한다.
예제host 속성 IE3.02 NS2
⇒ 개체 연결 주소나 위치의 hostnameport 번호를 반환하거나 설정한다.
문법: .host[=sVal]
코드: document.write(oObj.host); 결과:
예제hostname 속성 IE3.02 NS2
⇒ 주소(URL)의 서버(server) 이름, 서브도메인(subdomain)과 도메인(domain) 이름 혹은 아이피주소(IP address)를 나타내는 호스트 이름을 반환하거나 지정한다.
문법: .hostname[=sVal]
코드: document.write(oObj.hostname; 결과:
예제href 속성 IE3.02 NS2 (<A href=urlVal> 애트리뷰트)
⇒ 완전한 주소(URL)의 문자열을 반환하거나 설정하고 모든 link 속성들은 그의 부분문자열이다.
문법: [sVal=].href
코드: document.write(oObj.href); 결과:
예제pathname 속성 IE3.02 NS2
⇒ 주소(URL)의 문자열 중의 특정 자원에 접속을 지정하는 부분 문자열이다. 이는 폴더와 파일명으로 구성된다.
문법: .pathname[=sVal]
코드: document.write(oObj.pathname); 결과:
예제port 속성 IE3.02 NS2
⇒ 서버(server)가 사용하는 통신포트(port)를 지정하는 포트 번호를 반환하거나 설정한다.
문법: .port[=sVal]
코드: document.write(oObj.port); 결과:
예제protocol 속성 IE3.02 NS2
⇒ 주소(URL)의 시작되는 문자열로 콜론(:)까지이다. protocol 속성은 주소에 접속하는 통신 방식을 문자열로 반환하거나 설정한다.
문법: .protocol[=sVal]
코드: document.write(oObj.protocol); 결과:
예제search 속성 IE3.02 NS3 (<A href=URLString?sVal> 애트리뷰트)
⇒ 개체의 연결 페이지의 href 속성의 마지막 부분에 ? 다음의 부분인 연결 쿼리(query) 정보의 문자열을 반환한다.
문법: .search[=sVal]
코드: <a href="http://koxo.com/cgi/tut/propExp.cgi?program=search&name=test">search 테스트 연결</a> 결과: 예제를 참조하라.
코드: for (i=0;i< document.links.length;i++){ if (document.links[i].search) document.write(document.links[i].search)}
결과:
target 속성 IE3.02 NS2 (<A target=sVal> 애트리뷰트)
⇒ 목표 프레임 이름을 반환하거나 지정한다.
문법: location.target[=sVal]
코드: for (i=0;i< document.links.length;i++){ if (document.links[i].target) document.write(document.links[i].target+', ')}</script></span> 결과:
text 속성 - NS4
⇒ 주소의 문자열을 반환하거나 지정한다.
문법: location.text[=sVal]
코드: objectName.location.text='연결문자열' 결과: 생략
x / y속성 - NS4
⇒ 주소의 x, y 좌표값을 반환하거나 지정한다.
문법: location.x[=iVal]
문법: location.y[=iVal]
코드: document.write(objectName.location.x,' | ',objectName.location.y) 결과: 생략

assign 메서드 IE3.02 NS2
⇒ 지정한 주소의 새로운 HTML 문서를 로딩한다.
문법: location.assign(sVal)
코드: <BUTTON onclick="document.location.assign('location.html#methodJump')">assigh('location.html#methodJump')</BUTTON>
결과: <!현재 페이지 메서드 설명위치로..>
reload 메서드 IE4 NS3
window의 현재 문서를 location.href 속성을 대체시켜 강제적으로 다시 로딩(reload)하게 한다.
문법: location.reload([forceGet])
코드: <BUTTON onclick="document.location.reload()">assigh()</BUTTON>
결과: <!현재 페이지 맨 위로 다시 로드 된다.>
replace 메서드 IE4 NS3
history 개체의 지정된 URL을 현재의 주소로 대체시킨다.
일단 replace 메서드를 호출하면 뒤로 단추로 뒤로 항해할 수 없다.
문법: location.replace(sVal)
코드: <BUTTON onclick="document.location.replace('location.html#methodJump')">replace('location.html#methodJump')</BUTTON>
결과: <!현재 페이지 메서드 설명위치로..>
메서드 예제 설명을 위한 공백