1.Routing

HTML DOM API

Location

'window' 객체의 'location' 속성은 μ›Ή κ°œλ°œμ—μ„œ URL을 νŽΈλ¦¬ν•˜κ²Œ μž‘μ—…ν•  수 μžˆλŠ” 방법을 μ œκ³΅ν•œλ‹€. κ°œλ°œμžλŠ” ν•΄λ‹Ή 속성에 μ•‘μ„ΈμŠ€ν•˜μ—¬ ν˜„μž¬ URL에 λŒ€ν•œ 정보λ₯Ό κ²€μƒ‰ν•˜κ±°λ‚˜, URL의 일뢀λ₯Ό μˆ˜μ •ν•˜κ±°λ‚˜, μƒˆ URL둜 이동할 수 μžˆμœΌλ―€λ‘œ μ›Ή μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ—μ„œ 동적이고 μΈν„°λž™ν‹°λΈŒν•œ λ™μž‘μ„ κ΅¬ν˜„ν•  수 μžˆλ‹€.

  1. location.href: 이 속성은 ν˜„μž¬ μ›Ή νŽ˜μ΄μ§€μ˜ 전체 URL을 λ‚˜νƒ€λ‚Έλ‹€. 읽기와 μˆ˜μ •μ΄ λͺ¨λ‘ κ°€λŠ₯ν•˜λ‹€.

  2. location.protocol: 이 속성은 URL의 ν”„λ‘œν† μ½œ λΆ€λΆ„(예: "http:" λ˜λŠ” "https:")을 λ°˜ν™˜ν•œλ‹€. ν˜„μž¬ νŽ˜μ΄μ§€μ˜ ν”„λ‘œν† μ½œμ„ ν™•μΈν•˜κ±°λ‚˜ μˆ˜μ •ν•  λ•Œ μœ μš©ν•œλ‹€.

  3. location.host 및 location.hostname: 이 속성은 URL의 도메인 λ˜λŠ” 호슀트 이름을 λ°˜ν™˜ν•œλ‹€. 예λ₯Ό λ“€μ–΄ "example.com"은 URL "https://example.com"의 호슀트 이름이닀. location.host μ†μ„±μ—λŠ” μ§€μ •λœ 경우 포트 λ²ˆν˜Έλ„ ν¬ν•¨λœλ‹€.

  4. location.pathname: 이 속성은 URL의 κ²½λ‘œμ™€ 파일 이름을 λ°˜ν™˜ν•œλ‹€. 예λ₯Ό λ“€μ–΄ URL "https://example.com/path/file.html"μ—μ„œ "location.pathname"은 "/path/file.html"이 λœλ‹€.

  5. location.search: 이 속성은 λ¬ΌμŒν‘œ("?") 및 λͺ¨λ“  λ§€κ°œλ³€μˆ˜λ₯Ό ν¬ν•¨ν•˜μ—¬ URL의 쿼리 λ¬Έμžμ—΄ 뢀뢄을 λ°˜ν™˜ν•œλ‹€. 예λ₯Ό λ“€μ–΄ "https://example.com/search?q=apple" URLμ—μ„œ "location.search"λŠ” "?q=apple"이 λœλ‹€.

  6. location.hash: 이 속성은 쑰각 μ‹λ³„μž λ˜λŠ” ν•΄μ‹œ 기호("#") 뒀에 μ˜€λŠ” URL의 일뢀λ₯Ό λ°˜ν™˜ν•œλ‹€. νŠΉμ • μ„Ήμ…˜μœΌλ‘œ μ΄λ™ν•˜κΈ° μœ„ν•œ νŽ˜μ΄μ§€ λ‚΄ 액컀 링크에 자주 μ‚¬μš©λœλ‹€.

pathname

URL μ»¨ν…μŠ€νŠΈμ—μ„œ pathname은 μ›Ή μ„œλ²„μ— μžˆλŠ” λ¦¬μ†ŒμŠ€μ˜ κ²½λ‘œμ™€ 파일 이름을 λ‚˜νƒ€λ‚΄λŠ” URL 뢀뢄을 λ‚˜νƒ€λ‚Έλ‹€. μ„œλ²„μ˜ 파일 μ‹œμŠ€ν…œ λ‚΄μ—μ„œ λ¦¬μ†ŒμŠ€μ˜ 계측 ꡬ쑰 및 μœ„μΉ˜μ— λŒ€ν•œ 정보λ₯Ό μ œκ³΅ν•œλ‹€.

pathname은 특히 window.location 개체 λ‚΄μ—μ„œ HTML DOM API에 μžˆλŠ” "location" 개체의 속성이닀. window.location.pathnameκ³Ό 같은 pathname 속성을 μ‚¬μš©ν•˜μ—¬ μ•‘μ„ΈμŠ€ν•  수 μžˆλ‹€.

pathname 핡심 사항

  1. ꡬ쑰 및 ν˜•μ‹(Structure and Format): pathname은 μŠ¬λž˜μ‹œ("/")둜 μ‹œμž‘ν•˜λŠ” λ¬Έμžμ—΄μ΄λ©° μ›Ή μ„œλ²„μ˜ 파일 λ˜λŠ” 디렉토리에 λŒ€ν•œ 경둜λ₯Ό λ‚˜νƒ€λ‚Έλ‹€. μŠ¬λž˜μ‹œ("/")둜 κ΅¬λΆ„λœ μ—¬λŸ¬ μˆ˜μ€€μ˜ 디렉토리가 포함될 수 μžˆλ‹€. 예λ₯Ό λ“€μ–΄ URL "https://example.com/path/file.html"μ—μ„œ pathname은 "/path/file.html"이닀.

  2. 파일 이름 및 ν™•μž₯자(File Names and Extensions): URL이 νŠΉμ • νŒŒμΌμ„ λ‚˜νƒ€λ‚΄λŠ” 경우 pathnameμ—λŠ” 일반적으둜 파일 이름과 ν•΄λ‹Ή ν™•μž₯μžκ°€ ν¬ν•¨λœλ‹€. μœ„μ˜ μ˜ˆμ—μ„œ "file.html"은 ν™•μž₯μžκ°€ ".html"인 파일 이름이닀.

  3. 디렉토리 ꡬ쑰(Directory Structure): URL이 디렉토리 λ˜λŠ” μ€‘μ²©λœ 디렉토리 ꡬ쑰λ₯Ό λ‚˜νƒ€λ‚΄λŠ” 경우 pathnameμ—λŠ” 경둜의 디렉토리 이름이 ν¬ν•¨λœλ‹€. 예λ₯Ό λ“€μ–΄ URL "https://example.com/path/subdirectory/file.html"μ—μ„œ pathname은 "/path/subdirectory/file.html"이며 λ¦¬μ†ŒμŠ€κ°€ λ‹€μŒ μœ„μΉ˜μ— μžˆμŒμ„ λ‚˜νƒ€λ‚Έλ‹€. ("path" 디렉토리 내에 μžˆλŠ” "subdirectory" 디렉토리)

  4. ν›„ν–‰ μŠ¬λž˜μ‹œ(Trailing Slash): μ–΄λ–€ κ²½μš°μ—λŠ” pathname이 ν›„ν–‰ μŠ¬λž˜μ‹œ("/")둜 λλ‚˜μ„œ URL이 νŠΉμ • 파일이 μ•„λ‹Œ 디렉토리λ₯Ό λ‚˜νƒ€λƒ„μ„ λ‚˜νƒ€λ‚Ό 수 μžˆλ‹€. 예λ₯Ό λ“€μ–΄, "https://example.com/directory/"λŠ” "directory" 디렉터리λ₯Ό λ‚˜νƒ€λ‚΄λŠ” 것을 λ‚˜νƒ€λ‚΄κΈ° μœ„ν•΄ pathname에 ν›„ν–‰ μŠ¬λž˜μ‹œκ°€ μžˆλ‹€.

  5. 쿼리 λ§€κ°œλ³€μˆ˜ 및 ν•΄μ‹œ(Query Parameters and Hash): pathnameμ—λŠ” 쿼리 λ§€κ°œλ³€μˆ˜(λ¬ΌμŒν‘œ "?" λ’€ λΆ€λΆ„) λ˜λŠ” ν•΄μ‹œ 쑰각(ν•΄μ‹œ 기호 "#" λ’€ λΆ€λΆ„)이 ν¬ν•¨λ˜μ§€ μ•Šλ‹€. pathname은 특히 λ¦¬μ†ŒμŠ€μ˜ κ²½λ‘œμ™€ 파일 이름을 λ‚˜νƒ€λ‚΄λ©° 쿼리 맀개 λ³€μˆ˜μ™€ ν•΄μ‹œλŠ” URL의 별도 ꡬ성 μš”μ†Œμ΄λ‹€.

Last updated