JavaScript获取URL参数的两种实现方式

作者:青柠

时间:2026-10-21

浏览:383

本文介绍在JavaScript中获取URL地址栏参数的两种常用方法。第一种通过location.search获取查询字符串,利用decodeURI解码并拆分键值对;第二种使用正则表达式匹配特定参数名。文章提供了完整的函数代码示例,帮助开发者快速实现参数解析功能。

文章目录

字符串拆分法获取参数

第一种方法采用字符串拆分策略。

可以通过 window.location.href、location.href 或 window.location 对象获取完整的地址栏内容。

使用 decodeURI() 函数可以对地址栏中的数据进行解码,从而正确恢复中文数据。

利用 window.search 属性可以直接获取问号及其之后的查询字符串部分。

字符串拆分法代码示例


//获取地址栏里(URL)传递的参数 
function GetRequest(value) { 
  //url例子:www.bicycle.com?id="123456"&Name="bicycle"; 
  var url = decodeURI(location.search); //?id="123456"&Name="bicycle";
  var object = {};
  if(url.indexOf("?") != -1)//url中存在问号,也就说有参数。 
  {  
   var str = url.substr(1); //得到?后面的字符串
   var strs = str.split("&"); //将得到的参数分隔成数组[id="123456",Name="bicycle"];
   for(var i = 0; i < strs.length; i ++) 
    {  
        object[strs[i].split("=")[0]]=strs[i].split("=")[1]
      }
  }
  return object[value]; 
} 

正则匹配法获取参数

第二种方法采用正则匹配策略。

该方法的原理与第一种类似,均是从URL中提取信息,区别在于具体的提取实现方式不同。

正则匹配法代码示例


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

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持本站!

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章