[javascript] 문자열을 쿼리 문자열로 변환하기

JavaScript에서는 URL 요청을 보낼 때 쿼리 문자열(query string)을 사용합니다. 쿼리 문자열은 URL의 끝에 ? 문자로 시작하여 key=value 형식으로 데이터를 전달합니다. 이러한 쿼리 문자열을 만들기 위해서는 JavaScript에서 문자열을 쿼리 문자열로 변환해야 합니다.

아래는 JavaScript를 사용하여 문자열을 쿼리 문자열로 변환하는 방법을 보여주는 예제 코드입니다.

function encodeQueryParams(params) {
  const encodedParams = [];

  for (let key in params) {
    if (params.hasOwnProperty(key)) {
      const encodedKey = encodeURIComponent(key);
      const encodedValue = encodeURIComponent(params[key]);

      encodedParams.push(`${encodedKey}=${encodedValue}`);
    }
  }

  return encodedParams.join('&');
}

// 예제 사용법
const params = {
  name: 'John Doe',
  age: 25,
  city: 'Seoul'
};

const queryString = encodeQueryParams(params);
console.log(queryString);

위의 예제 코드에서는 encodeQueryParams 함수를 사용하여 주어진 객체를 쿼리 문자열로 변환합니다. 객체의 각 속성은 encodeURIComponent 함수를 사용하여 인코딩되어 쿼리 문자열에 추가됩니다. 쿼리 문자열은 & 문자로 각각의 속성들이 구분되어 있습니다.

예제에서는 params 객체를 쿼리 문자열로 변환한 후 결과를 콘솔에 출력합니다. 실행 결과는 다음과 같습니다.

name=John%20Doe&age=25&city=Seoul

위의 결과는 name=John%20Doe&age=25&city=Seoul 형식의 쿼리 문자열입니다. 이 문자열은 URL 요청에 사용될 수 있습니다.

이처럼 JavaScript를 사용하여 문자열을 쿼리 문자열로 변환할 수 있습니다. 이러한 기능은 예를 들어 AJAX 요청을 보낼 때 URL 매개변수를 쿼리 문자열 형식으로 전달하는 등의 상황에서 유용하게 사용될 수 있습니다.

참고 자료: