mirror of
https://github.com/HSLdevcom/digitransit-ui
synced 2025-07-06 01:00:37 +02:00
26 lines
565 B
JavaScript
26 lines
565 B
JavaScript
/**
|
|
* Serializes objects
|
|
*
|
|
* @name serialize
|
|
* @param {Object} obj Object to be serialized
|
|
* @param {Any} prefix
|
|
* @returns {String} Serialized object
|
|
* @example
|
|
* digitransit-search-util.serialize(param1, param2);
|
|
* //=true
|
|
*/
|
|
export default function serialize(obj, prefix) {
|
|
if (!obj) {
|
|
return '';
|
|
}
|
|
return Object.keys(obj)
|
|
.map(p => {
|
|
const k = prefix || p;
|
|
const v = obj[p];
|
|
|
|
return typeof v === 'object'
|
|
? serialize(v, k)
|
|
: `${encodeURIComponent(k)}=${encodeURIComponent(v)}`;
|
|
})
|
|
.join('&');
|
|
}
|