Введение
В этом практическом занятии мы изучим, как с помощью JavaScript генерировать строку запроса из пар ключ-значение объекта. Мы будем использовать метод Array.prototype.reduce() для Object.entries() для создания строки запроса и определять соответствующий символ в зависимости от длины queryString. В конце этого практического занятия вы сможете эффективно генерировать строку запроса для своих веб-приложений.
Преобразование объекта в строку запроса
Для преобразования объекта в строку запроса используйте функцию objectToQueryString(), которая генерирует строку запроса из пар ключ-значение заданного объекта.
Функция работает следующим образом:
- Она использует
Array.prototype.reduce()дляObject.entries()для создания строки запроса изqueryParameters. - Она определяет
symbolкак?или&в зависимости от длиныqueryString. - Она конкатенирует
valкqueryStringтолько если это строка. - Она возвращает
queryStringили пустую строку, когдаqueryParametersложны.
Вот код для функции objectToQueryString():
const objectToQueryString = (queryParameters) => {
return queryParameters
? Object.entries(queryParameters).reduce(
(queryString, [key, val], index) => {
const symbol = queryString.length === 0 ? "?" : "&";
queryString +=
typeof val === "string" ? `${symbol}${key}=${val}` : "";
return queryString;
},
""
)
: "";
};
Пример использования функции objectToQueryString():
objectToQueryString({ page: "1", size: "2kg", key: undefined }); // возвращает '?page=1&size=2kg'
Резюме
Поздравляем! Вы завершили практическое занятие по преобразованию объекта в строку запроса. Вы можете выполнить больше практических занятий в LabEx, чтобы улучшить свои навыки.