考核内容: BOMR操作与函数使用
题发散度: ★★★
试题难度: ★★
解题思路:
window.location 对象用于获得当前页面的地址 (URL),并把浏览器重定向到新的页面。
Location 对象属性
hash 返回一个URL的锚部分
host 返回一个URL的主机名和端口
hostname 返回URL的主机名
href 返回完整的URL
pathname 返回的URL路径名。
port 返回一个URL服务器使用的端口号
protocol 返回一个URL协议
search 返回一个URL的查询部分
split() 方法 把一个字符串分割成字符串数组:
如果把空字符串 ("") 用作 separator,那么 stringObject 中的每个字符之间都会被分割。
string.split(separator,limit)
separator 可选。字符串或正则表达式,从该参数指定的地方分割 string Object。
limit 可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。
参考代码
function argfn(str) {
var list=[],arr=str.replace("?","").split("&")
for(i in arr){
var subarr=arr[i].split("=")
list.push({[subarr[0]]:subarr[1]})
}
return list
}
console.log(argfn(window.location.search))