/**

  • 将对象转换为 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'

JavaScript 对象转 URL 参数:详细注释代码示例

原文地址: https://www.cveoy.top/t/topic/lKH8 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录