jQuery.param这个函数反向为对象有这个方法吗

ccssddnnsb 2012-02-18 02:33:09
&b=2&b=3
我想生成一个对象temp 可以用 temp['b'] =2 这样引用。
...全文
172 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
jusfr 2012-02-18
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 jusfr 的回复:]
result = [result].concat(arr[i].split('=')[1]);
[/Quote]

这个逻辑写的不对,不好意思。
result = (typeof (result) === 'string' ? [result] : result).concat(arr[i].split('=')[1]);

或者直接声明result=[],然后push新元素进去,return时判断下再返回。
jusfr 2012-02-18
  • 打赏
  • 举报
回复
&b=2&b=3,请问temp["b"]=2的话另外一个3怎么处理呢?使用函数取吧,然后typeof()判断为string则直接使用,object说明是数组对象。
var getParam = function (key) {
var arr = window.location.search.slice(1).replace(/\+/g, ' ').split('&');
var result = undefined;
for (var i = 0; i < arr.length; i++) {
if (arr[i].split('=')[0] === key) {
if (!result) {
result = arr[i].split('=')[1];
} else {
result = [result].concat(arr[i].split('=')[1]);
}
}
}
return result;
}

87,989

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧