객체를 URL 질의 문자열로 바꿉니다.
| 인자 |
설명 |
타입 |
string |
URL 질의 문자열 |
string |
| 매개변수 |
설명 |
타입 |
기본값 |
data |
바꿀 객체 |
Object |
{} |
import { querystring } from 'ranuts';
const params = {
name: 'John',
age: 30,
city: 'New York',
};
const query = querystring(params);
console.log(query); // 'name=John&age=30&city=New%20York'
import { querystring } from 'ranuts';
const baseUrl = 'https://api.example.com/users';
const params = {
page: 1,
limit: 10,
sort: 'name',
};
const url = `${baseUrl}?${querystring(params)}`;
console.log(url);
// 'https://api.example.com/users?page=1&limit=10&sort=name'
import { querystring } from 'ranuts';
const params = {
search: 'hello world',
category: 'web development',
};
const query = querystring(params);
console.log(query); // 'search=hello%20world&category=web%20development'
import { querystring } from 'ranuts';
const params = {
name: 'John',
age: undefined,
city: null,
active: true,
};
const query = querystring(params);
console.log(query); // 'name=John&active=true'
// 값이 undefined이거나 null이면 걸러집니다
- URL 인코딩: 값은 알아서 URL 인코딩됩니다.
- 빈 값 거르기: 값이
undefined이거나 null이면 알아서 걸러져 질의 문자열에 나오지 않습니다.
- 객체여야 합니다: 객체가 아닌 값을 넘기면
TypeError가 납니다.
- 인코딩 전 처리: 키와 값 모두 인코딩 전에
decodeURIComponent를 거칩니다.