JS根据key值获取URL中的参数值及把URL的参数转换成json对象


Posted in Javascript onAugust 26, 2015

不废话了,直接贴代码了,通过示例一讲解JS根据key值获取URL中的参数值及把URL的参数转换成json对象,示例二讲解js获取url传递参数,具体内容请看下文

示例一:

//把url的参数部分转化成json对象 

parseQueryString: function (url) {
  var reg_url = /^[^\?]+\?([\w\W]+)$/,
   reg_para = /([^&=]+)=([\w\W]*?)(&|$|#)/g,
   arr_url = reg_url.exec(url),
   ret = {};
  if (arr_url && arr_url[1]) {
   var str_para = arr_url[1], result;
   while ((result = reg_para.exec(str_para)) != null) {
    ret[result[1]] = result[2];
   }
  }
  return ret;
 }

// 通过key获取url中的参数值

getQueryString: function (name) {
  var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
  var r = window.location.search.substr(1).match(reg);
  if (r != null) return unescape(r[2]);
  return null;
 }

示例二:

js通过两种方法获取url传递参数:

js获取url传递参数方法一:

 这里是一个获取URL带QUESTRING参数的JAVASCRIPT客户端解决方案,相当于asp的request.querystring,PHP的$_GET
函数:

<Script language="javascript">
function GetRequest() {
 
 var url = location.search; //获取url中"?"符后的字串
 var theRequest = new Object();
 if (url.indexOf("?") != -1) {
  var str = url.substr(1);
  strs = str.split("&");
  for(var i = 0; i < strs.length; i ++) {
   theRequest[strs[i].split("=")[0]]=(strs[i].split("=")[1]);
  }
 }
 return theRequest;
}
</Script>

然后我们通过调用此函数获取对应参数值:

<Script language="javascript">
var Request = new Object();
Request = GetRequest();
var 参数1,参数2,参数3,参数N;
参数1 = Request[''参数1''];
参数2 = Request[''参数2''];
参数3 = Request[''参数3''];
参数N = Request[''参数N''];
</Script>

以此获取url串中所带的同名参数

js获取url传递参数方法二 正则分析法:

function GetQueryString(name) {
  var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)","i");
  var r = window.location.search.substr(1).match(reg);
  if (r!=null) return (r[2]); return null;
}
alert(GetQueryString("参数名1"));
alert(GetQueryString("参数名2"));
alert(GetQueryString("参数名3"));

其他参数获取介绍:

//设置或获取对象指定的文件名或路径。

alert(window.location.pathname);

//设置或获取整个 URL 为字符串。

alert(window.location.href);

//设置或获取与 URL 关联的端口号码。

alert(window.location.port);

//设置或获取 URL 的协议部分。

alert(window.location.protocol);

//设置或获取 href 属性中在井号“#”后面的分段。

alert(window.location.hash);

//设置或获取 location 或 URL 的 hostname 和 port 号码。

alert(window.location.host);

//设置或获取 href 属性中跟在问号后面的部分。

alert(window.location.search);

以上内容介绍了JS根据key值获取URL中的参数值及把URL的参数转换成json对象,js通过两种方式获取url传递参数,代码

非常简单,希望对大家有所帮助。

Javascript 相关文章推荐
通过jQuery源码学习javascript(三)
Dec 27 Javascript
js自动生成对象的属性示例代码
Oct 28 Javascript
JavaScript 实现鼠标拖动元素实例代码
Feb 24 Javascript
浅析JavaScript动画
Jun 10 Javascript
AngularJS实现网站换肤实例
Feb 19 Javascript
原生js实现节日时间倒计时功能
Jan 18 Javascript
微信小程序实现根据字母选择城市功能
Aug 16 Javascript
jQuery中each方法的使用详解
Mar 18 jQuery
Vue axios设置访问基础路径方法
Sep 19 Javascript
三分钟教你用Node做一个微信哄女友(基友)神器(面向小白)
Jun 21 Javascript
JavaScript闭包相关知识解析
Oct 19 Javascript
利用 Chrome Dev Tools 进行页面性能分析的步骤说明(前端性能优化)
Feb 24 Javascript
jquery实现的横向二级导航效果代码
Aug 26 #Javascript
jQuery三级下拉列表导航菜单代码分享
Apr 15 #Javascript
jquery用ajax方式从后台获取json数据后如何将内容填充到下拉列表
Aug 26 #Javascript
js钢琴按钮波浪式图片排列效果代码分享
Aug 26 #Javascript
javascript中alert()与console.log()的区别
Aug 26 #Javascript
JavaScript基本数据类型及值类型和引用类型
Aug 25 #Javascript
基于jQuery实现的QQ表情插件
Aug 25 #Javascript
You might like
php_xmlhttp 乱码问题解决方法
2009/08/07 PHP
php实现的漂亮分页方法
2014/04/17 PHP
PHPMailer发送邮件
2016/12/28 PHP
document.open() 与 document.write()的区别
2007/08/13 Javascript
jQuery 各种浏览器下获得日期区别
2008/12/22 Javascript
jQuery截取指定长度字符串的实现原理及代码
2014/07/01 Javascript
深入探寻seajs的模块化与加载方式
2015/04/14 Javascript
基于jQuery实现Ajax验证用户名是否存在实例
2016/03/30 Javascript
第一次接触神奇的Bootstrap基础排版
2016/07/26 Javascript
jquery根据td给相同tr下其他td赋值的实现方法
2016/10/05 Javascript
详解Angular 自定义结构指令
2017/06/21 Javascript
Node.js创建Web、TCP服务器
2017/12/05 Javascript
Angular整合zTree的示例代码
2018/01/24 Javascript
vue-cli 引入、配置axios的方法
2018/05/08 Javascript
GOJS+VUE实现流程图效果
2018/12/01 Javascript
js实现3D照片墙效果
2019/10/28 Javascript
vue项目引入ts步骤(小结)
2019/10/31 Javascript
Python编程实现从字典中提取子集的方法分析
2018/02/09 Python
python简单商城购物车实例代码
2018/03/15 Python
python 把文件中的每一行以数组的元素放入数组中的方法
2018/04/29 Python
python读写csv文件并增加行列的实例代码
2019/08/01 Python
python定时任务 sched模块用法实例
2019/11/04 Python
python paramiko远程服务器终端操作过程解析
2019/12/14 Python
pyCharm 实现关闭代码检查
2020/06/09 Python
python能自学吗
2020/06/18 Python
把富文本的回车转为br标签
2019/08/09 HTML / CSS
Audible英国:有声读物,30天免费试用
2019/10/16 全球购物
俄罗斯在线水暖商店:Perfecto.ru
2019/10/25 全球购物
外企C语言笔试题
2013/11/10 面试题
中学生学习生活的自我评价
2013/10/26 职场文书
自行车租赁公司创业计划书
2014/01/28 职场文书
网络工程师职业规划
2014/02/10 职场文书
煤矿施工安全协议书
2016/03/22 职场文书
MySQL 全文检索的使用示例
2021/06/07 MySQL
Java使用jmeter进行压力测试
2021/07/09 Java/Android
NGINX 权限控制文件预览和下载的实现原理
2022/01/18 Servers