Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const params = {
- "name": ["alpha &", "beta"],
- "id": ["one", "&two=2"],
- "from": 1533735971000,
- "to": 1533822371147,
- "status": true
- };
- const output = Object.entries(params).map(
- (pair) => {
- let [key, val] = pair;
- // normalize val to always an array
- val = (val instanceof Array) ? val : [val];
- // encode key only once
- key = encodeURIComponent(key);
- // then make a different query string for each val member
- return val.map(
- (member) => `${key}=${encodeURIComponent(member)}`
- ).join('&');
- }
- ).join('&');
- return val.map(
- (member) => `${key}=${encodeURIComponent(member)}`
- ).join('&');
- return val.map(
- (member) => (member ? `${key}=${encodeURIComponent(member)}` : `${key}`)
- ).join('&');
- return val.reduce(
- (result, member) => {
- if (member) {
- result.push(`${key}=${encodeURIComponent(member)}`);
- }
- return result;
- },
- []
- ).join('&');
Add Comment
Please, Sign In to add comment