- String.prototype.match()与适当的正则表达式一起使用获取所有键值对
- 用Array.prototype.reduce()将它们组合为单个对象
- 传递location.search作为参数作为当前的url
const getURLParameters = (url) =>
(url.match(/([^?=&]+)(=([^&]*))/g) || []).reduce(
(a, v) => (
(a[v.slice(0, v.indexOf("="))] = v.slice(v.indexOf("=") + 1)), a
),
{}
);
getURLParameters("https://juejin.cn/"); // {}
getURLParameters("http://url.com/page?name=Tom&age=18"); // {name: "Tom", age: "18"}
==================================