|
@@ -3,19 +3,21 @@
|
|
|
* @returns {Object}
|
|
|
*/
|
|
|
function param2Obj(url) {
|
|
|
- const search = url.split('?')[1]
|
|
|
+ const search = decodeURIComponent(url.split('?')[1]).replace(/\+/g, ' ')
|
|
|
if (!search) {
|
|
|
return {}
|
|
|
}
|
|
|
- return JSON.parse(
|
|
|
- '{"' +
|
|
|
- decodeURIComponent(search)
|
|
|
- .replace(/"/g, '\\"')
|
|
|
- .replace(/&/g, '","')
|
|
|
- .replace(/=/g, '":"')
|
|
|
- .replace(/\+/g, ' ') +
|
|
|
- '"}'
|
|
|
- )
|
|
|
+ const obj = {}
|
|
|
+ const searchArr = search.split('&')
|
|
|
+ searchArr.forEach(v => {
|
|
|
+ const index = v.indexOf('=')
|
|
|
+ if (index !== -1) {
|
|
|
+ const name = v.substring(0, index)
|
|
|
+ const val = v.substring(index + 1, v.length)
|
|
|
+ obj[name] = val
|
|
|
+ }
|
|
|
+ })
|
|
|
+ return obj
|
|
|
}
|
|
|
|
|
|
/**
|