28 lines
		
	
	
		
			740 B
		
	
	
	
		
			JavaScript
		
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			740 B
		
	
	
	
		
			JavaScript
		
	
	
	
/**
 | 
						||
 * @function 将url中的查询字符串转换为obj
 | 
						||
 * @param search { String } 查询字符串,默认为当前url中的查询字符串
 | 
						||
 * @return { Object }
 | 
						||
 */
 | 
						||
export const query2object = (search = location.search.substr(1)) => {
 | 
						||
  if (!search.length) return {}
 | 
						||
  const query = {}
 | 
						||
  for (const queryString of search.split('&')) {
 | 
						||
    const kv = queryString.split('=')
 | 
						||
    query[kv[0]] = kv[1]
 | 
						||
  }
 | 
						||
  return query
 | 
						||
}
 | 
						||
 | 
						||
/**
 | 
						||
 * @function 将对象转换为查询字符串,不带#和?
 | 
						||
 * @param object
 | 
						||
 */
 | 
						||
export const object2query = (object) => {
 | 
						||
  if (Object.keys(object).length === 0) return ''
 | 
						||
  let search = ''
 | 
						||
  for (const key in object) {
 | 
						||
    search += `${key}=${object[key]}&`
 | 
						||
  }
 | 
						||
  return search.substr(0, search.length - 1)
 | 
						||
}
 |