方法1 使用JavaScript提供的 URLSearchParams
function urlParamsToObject(url) {
const params = new URLSearchParams(url.search);
console.log(params);
const paramObj = {};
for (let [key, value] of params) {
paramObj[key] = decodeURIComponent(value);
}
return paramObj;
}
// 使用示例
const url = new URL('https://example.com/?age=18&name=皎月&gender=girl');
const paramsObj = urlParamsToObject(url);
console.log(paramsObj);
方法2 使用split() 将URL字符串分割
function urlParamsToObject(url) {
//获取字符串 ? 后面的部分
const queryString = url.split('?')[1];
const paramsArr = queryString.split('&');
const paramObj = {};
paramsArr.forEach(param => {
const [key, value] = param.split('=');
paramObj[key] = decodeURIComponent(value);
});
return paramObj;
}
// 使用示例
const url = 'https://example.com/?age=18&name=皎月&gender=girl';
const paramsObj = urlParamsToObject(url);
console.log(paramsObj);