jQuery è in grado di trasformare oggetti JavaScript in query string HTTP da usare con AJAX. Ma come avviene questo processo? Vediamolo insieme.
Un oggetto letterale è composto da coppie di proprietà e valori. Quindi è sufficiente eseguire un ciclo for...in
su tali oggetti ed assemblare la stringa corrispondente:
'use strict';
const toQueryString = obj => {
if(typeof obj !== 'object' || obj === null) {
return '';
}
const arr = [];
for (let prop in obj) {
let query = prop + '=' + obj[prop];
arr.push(query);
}
return arr.join('&');
};
Quindi il seguente oggetto:
const query = {
a: 1,
b: 'Test'
};
diventerà:
const queryString = toQueryString(query);
console.log(queryString); // a=1&b=Test