function getUrlParam(name){
var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)');
var result = window.location.search.substr(1).match(reg);
return result ? decodeURIComponent(result[2]) : null;
}

其中window.location.search为获取链接参数的方法,之前一直使用window.location.href然后使用split方法拆分。才发现window.location.search.substr(1)好像更方便。

substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符,substr(1)表示的就是截取?号,获取?之后的内容。然后用match() 检索正则表达式的匹配。

其中正则var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)'); "(^|&)" 这个匹配开头或&字符,整体表示寻找&+url参数名=值+&的格式,&可以不存在。这样result的内容就是检索到的匹配的内容,然后return时判断是否为空,如果不为空则result[2]在这里表示参数后的值,即返回参数值,如果为空的话就返回null。

获取url链接上的参数值的函数的更多相关文章

  1. js 获取url链接的任意参数

    <script> //先获取 当前的url链接 var url = location.href; //把url 链接切割为数组 var arr = url.split("&quo ...

  2. 通过JS获取URL链接带的参数

    1 /** 2 * 获取URL参数的方法 3 */ 4 $.extend({ //以便于通过$引用该方法 5 getUrlVars : function() { //获取多个参数数组 6 var va ...

  3. Java获取URL链接的文件类型

    问题发生: Java从网络批量读取图片并保存至本网站服务器后再插入文章中 今天转入一篇文章 http://news.qq.com/a/20170605/045860.htm 发现图片未能成功上传 查看 ...

  4. js获取url链接中的域名部分

    用js提取出url中的域名(domain)部分,用split()函数就可以了. 因为一个正确的url必定是由http://或者是https://.domain.路径/参数组成,所以可以用split以/ ...

  5. java 获取URL链接 内容

    public static String getHtmlConentByUrl(String ssourl) {        try {             URL url = new URL( ...

  6. js获取url链接地址的参数

    访问地址为:http://XXX.com?style=green <script language="javascript"> var getArgs = functi ...

  7. request获取url链接和参数

            //Returns the part of this request's URL from the protocol name up to the query string in th ...

  8. 获取URL链接正则

    public static final String HTTP_PATTERN = "http://[a-zA-Z0-9\\.\\/\\-_]+";

  9. javascript中如何使用js脚本模拟"request"获取url后参数值呢?

    转自:猫猫小屋--js获取url后参数信息 摘要: 下文讲述javascript中使用js代码获取url地址后面的参数值的方法分享,如下所示: 实现思路: 使用正则表达式对参数值进行匹配,获取参数后的 ...

随机推荐

  1. JDK动态代理源码剖析

    关键代码: 1.Proxy.newInstance: private static final Class<?>[] constructorParams = { InvocationHan ...

  2. rookit入門

    来源:rootkit_com 作者:Clandestiny 翻译:fqh “Help!我是一名新手!我需要一款rootkit入侵朋友的机器…我想编写自己的rootkit…我想开始开发代码… 该从哪里入 ...

  3. Maven入门指南11:使用Nexus搭建Maven私服

    1 . 私服简介 私服是架设在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构件.有了私服之后,当 Maven 需要下载构件时,直接请求私服,私服上存在则下载到本地仓库:否则,私服请求外部 ...

  4. Invoke-Obfuscation混淆ps文件绕过Windows_Defender

    前提 powershell只能针对win7之后的系统,之前的win操作系统默认没有安装powershell. 所在目录:C:\Windows\System32\WindowsPowerShell\v1 ...

  5. Stm32CubeMX5 配置 外部中断

    实验使用连接PA8引脚的按键触发中断,外部中断使用双边沿触发,这样就可以检测按键按下与松开,当按键按下时点亮LED, 当按键松开是关闭LED,在中断服务函数中只置位相应的标志,在main函数中具体处理 ...

  6. Redis ASP.NET 配置链接

    对于安装Redis后 很是不明白如何建立Redis 和 .net 的链接配置 于是查找了很多的资料 首先第一步:安装ASP.NET  NuGet 包 (ServiceStack.Redis) 安装好后 ...

  7. 【Luogu】【关卡2-10】分治算法(2017年10月)

    任务说明:将大问题拆分为小问题,分而治之,各个击破,然后在合并回来. 取余运算||快速幂 幂次方 逆序对 南蛮图腾

  8. Linux系统关闭对ping命令做响应。

    1.测试 ping 192.168.10.5 可以正常ping通, 2,修改 /proc/sys/net/ipv4/icmp_echo_ignore_all  文件的值=1 3.在测试 已经ping不 ...

  9. leetcode-160周赛-5241-铺瓷砖

    题目描述: 方法一:动态规划 class Solution: def f(self, n, m): if n < m: n, m = m, n if (n, m) in self.mem: re ...

  10. Linux常用命令入门

    在Linux早期的版本中,由于不支持图形化操作,用户基本上都是使用命令行方式来对系统进行操作.掌握常用 的一些Linux命令是非常有必要的,下面将分类进行介绍.由于篇幅有限,在这里我们介绍命令时有些不 ...