더북(TheBook)

콘솔

$ node url
new URL(): URL {
  href: 'http://www.gilbut.co.kr/book/bookList.aspx?sercate 1 = 001001000 #anchor',
  origin: 'http://www.gilbut.co.kr' ,
  protocol: 'http:',
  username: '',
  password: '',
  host: 'www.gilbut.co.kr',
  hostname: 'www.gilbut.co.kr',
  port: '',
  pathname: '/book/bookList.aspx',
  search: '?sercate 1 = 001001000 ',
  searchParams: URLSearchParams { 'sercate 1 ' => '001001000 ' },
  hash: '#anchor'
}
url.format(): http://www.gilbut.co.kr/book/bookList.aspx?sercate1=001001000#anchor

url.format(객체): 분해되었던 url 객체를 다시 원래 상태로 조립합니다.

주소가 host 부분 없이 pathname 부분만 오는 경우(예시: /book/bookList.apsx), WHATWG 방식은 이 주소를 처리할 수 없습니다. 4장에서 서버를 만들 때 host 부분 없이 pathname만 오는 주소를 보게 될 것입니다. 이럴 때는 new URL('/book/bookList.apsx', 'https://www.gilbut.co.kr')처럼 두 번째 인수로 host를 적어줘야 합니다.

search 부분(쿼리스트링)은 보통 주소를 통해 데이터를 전달할 때 사용됩니다. search는 물음표(?)로 시작하고, 그 뒤에 키=값 형식으로 데이터를 전달합니다. 여러 키가 있을 경우에는 &로 구분합니다. search 부분을 다루기 위해 searchParams라는 특수한 객체가 생성됩니다.

http://www.gilbut.co.kr/?page=3&limit=10&category=nodejs&category=javascript와 같은 주소에서는 ?page=3&limit=10&category=nodejs&category=javascript 부분이 search입니다.

다음 예제를 통해 searchParams 객체를 알아봅시다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.