JavaScript 对象转 URL 参数:详细注释代码示例
/**
- 将对象转换为 URL 查询字符串。
- @param {Object} obj - 要转换的对象。
- @returns {string} - URL 查询字符串。 */ function objectToQueryString(obj) { // 初始化一个空数组,用于存储查询参数。 const params = [];
// 遍历对象中的每个键值对。 for (const key in obj) { if (obj.hasOwnProperty(key)) { // 获取当前键的值。 const value = obj[key];
// 如果值为数组,则遍历数组中的每个项目。
if (Array.isArray(value)) {
value.forEach((item) => {
// 将键值对推送到 params 数组中。
params.push(`${encodeURIComponent(key)}=${encodeURIComponent(item)}`);
});
} else {
// 如果值不是数组,则将键值对推送到 params 数组中。
params.push(`${encodeURIComponent(key)}=${encodeURIComponent(value)}`);
}
}
}
// 使用 '&' 作为分隔符将 params 数组连接成单个字符串。 return params.join('&'); }
// 示例用法: const myObj = { name: 'John', age: 30, hobbies: ['reading', 'traveling'] };
const queryString = objectToQueryString(myObj); console.log(queryString); // 'name=John&age=30&hobbies=reading&hobbies=traveling'
原文地址: https://www.cveoy.top/t/topic/lKH8 著作权归作者所有。请勿转载和采集!