Community

자바스크립트의 URLSearchParams로 쿼리 스트링 다루기

소위 검색 파라미터(search parameters)라고도 불리는 쿼리 스트링은 URL에서 경로(pathname) 바로 다음에 나오는 ? 기호로 시작하는 문자열인데요. 비단 검색 뿐만 아니라 필터링(filter), 페이지네이션(pagination), 정렬(sort) 등 다양한 용도로 사용됩니다. 보통 웹 서버에서는 URL의 쿼리 스트링을 분석하여 요청한 리소스를 응답하기 전에 다양한 추가 작업을 수행할 수 있습니다. 쿼리 스트링에는 ?key1=value1&key2=value2&... 형태로 여러 개의 키와 값의 쌍을 & 기호로 구분하여 매개변수를 명시할 수 있는데요. 매개변수의 개수가 많아지면 사람의 눈으로 읽기가 쉽지 않고 매개변수에 다국어나 특수 문자가 포함되어 있으면 인코딩도 신경을 써줘야 하죠. 게다가 URL 명세에 따르면 쿼리 스트링은 ?key=value1&key=value2 와 같이 동일한 키에 여러 개의 값을 할당하는 것도 허용하는데요. 이 부분도 처리할 때 경계 조건을 잘 고려하지 않으면 버그로 이어지기 쉽습니다. 예전에는 자바스크립트에서 쿼리 스트링을 일반 문자열로 다루는 경우가 많아서 적지 않은 노력과 주의가 필요했었는데요. 요즘에는 URL API에서 제공하는 URLSearchParams를 사용하여 좀 더 안전하게 쿼리 스트링을 다룰 수 있게 되었습니다. 이번 시간에는 URL API에서 제공하는 또 다른 유용한 기능인 URLSearchParams를 이용하여 웹 주소의 구성 요소 중에서도 가장 다루기 어려운 쿼리 스트링을 다루는 방법에 대해서 알아보겠습니다. 📺 동영상: https://youtu.be/GDcVZZnsa0Q 📝 포스팅: https://careerly.co.kr/comments/101969 * URLSearchParams의 필요성 * URLSearchParams 객체의 생성 * size 속성 * toString() 메서드 * append(), set() 메서드 * get(), getAll() 메서드 * 파라미터 순회 * delete(), has() 메서드 * URL과 URLSearchParams 함께 사용 자바스크립트의 URL API를 사용하는 기본적인 방법이 궁금하시다면 아래 게시물을 참고 바랍니다. 📕 자바스크립트의 URL API로 웹 주소 다루기: https://careerly.co.kr/comments/103170 아직 웹 표준 API를 사용하여 쿼리 스트링을 다루기가 꺼려지시는 분께는 아래 게시물을 추천드리겠습니다. 📗 쿼리 스트링을 다루기 위한 자바스크립트 라이브러리: https://careerly.co.kr/comments/94959

알림

알림이 없습니다