function queryToJson(urlOrQuery) {
// If it's a full URL, extract only the query part
let query = urlOrQuery;
try {
const url = new URL(urlOrQuery);
query = url.search; // includes leading "?"
} catch {
// Not a full URL — treat as raw query string
}
const params = new URLSearchParams(query);
return Object.fromEntries(params.entries());
}
console.log(queryToJson("https://example.com/?name=aaa&age=30&city=bbbb"));
console.log(queryToJson("?a=1&b=bbbb&c=3.14"));
/*
run:
{ name: 'aaa', age: '30', city: 'bbbb' }
{ a: '1', b: 'bbbb', c: '3.14' }
*/