博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Javasrcipt中从一个url或者从一个字符串中获取参数值得方法
阅读量:4620 次
发布时间:2019-06-09

本文共 1398 字,大约阅读时间需要 4 分钟。

从url中获取参数值是che程序开发过程中的常用需求,偶然得闲,便抽空研究了一下javasrcipt下,获取参数的办法(JAVA中也类似)。

首先看url的规范:

URL组成:

protocol :// hostname[:port] / path / [;parameters][?query]#fragment
协议://主机名[:端口]/ 路径/[:参数] [?查询]#Fragment

一个规范的url参数总是在【?query】部分,以 “变量名=值”这样的形式存在;

这样就给我们取值提供了一个思路:

 

第一种方法:利用正则表达式,从url中获取我们需要的对应的参数的值

 

 

 

 

  

 

 

1 function getUrlPramByName(name){ 2      var url = window.location.search;  //获取url中?之后的内容 3      var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");  4      if(url){ 5           var r = url.substr(1).match(reg);  6  7           if (r != null) { 8                  return decodeURI(r[2]);  9           }else{10                  return null; 11           }12      };  13 };

 

可以自己在浏览器控制台执行下,这种方法只能单独使用,获取自己需要的那个参数值得变量

 

第二种方法: 利用字符串操作将所需要的值全部提出来

function getAllUrlPram(){    var url = window.location.search;   //获取url中?后面的内容    if(url  && url.indexOf("?")!= -1){       url = url.substr(1);   //去掉前面的?       var arr = url.split("&");  //将字符串以&为分隔符转化为数组       var obj = {};  //定义一个空对象       for(var i=0;i

 

 

这样我们可以定义一个在String原型链上的通用方法了:

 

String.prototype.getUrlParms = function(){      var index = this.indexOf("?");       if(index !=-1){            var str = this.substr(index+1);            var arr = str.split("&");  //将字符串以&为分隔符转化为数组            var obj = {};  //定义一个空对象           for(var i=0;i

 

 

最终对字符串执行getUrlParms()方法后,就会得到一个包含所有需要的参数和参数对应的值得对象了;

 

转载于:https://www.cnblogs.com/liquanjiang/p/8642356.html

你可能感兴趣的文章
关于 IOS 发布的点点滴滴记录(一)
查看>>
《EMCAScript6入门》读书笔记——14.Promise对象
查看>>
CSS——水平/垂直居中
查看>>
Eclipse连接mysql数据库jdbc下载(图文)
查看>>
Python中Selenium的使用方法
查看>>
三月23日测试Fiddler
查看>>
20171013_数据库新环境后期操作
查看>>
poj 1654 && poj 1675
查看>>
运维派 企业面试题1 监控MySQL主从同步是否异常
查看>>
Docker 版本
查看>>
poj 1753 Flip Game
查看>>
在深信服实习是怎样的体验(研发测试岗)
查看>>
Linux免密码登陆
查看>>
SpringMVC中文件的上传(上传到服务器)和下载问题(二)--------下载
查看>>
Socket & TCP &HTTP
查看>>
osip及eXosip的编译方法
查看>>
Hibernate composite key
查看>>
[CF Round #294 div2] D. A and B and Interesting Substrings 【Map】
查看>>
keepalived+nginx安装配置
查看>>
我的2015---找寻真实的自己
查看>>