原生JS获取URL链接参数的几种常见方法

我来给你详细讲解一下怎么通过原生JS获取URL链接参数。

一、利用window.location.search

window.location.search可以获取URL的查询参数部分,即URL中?号后面的内容。

示例代码如下:

const queryString = window.location.search;
console.log(queryString); // ?param1=value1&param2=value2

上面的代码输出的内容为?param1=value1&param2=value2,可以通过字符串的操作来进一步解析出具体的参数值。

二、利用URLSearchParams

URLSearchParams是一个内置对象,用于处理URL查询参数。可以将查询参数部分转换成一个对象,便于操作参数值。

示例代码如下:

const params = new URLSearchParams(window.location.search);
console.log(params.get('param1')); // value1
console.log(params.get('param2')); // value2

上面的代码通过URLSearchParams对象解析了URL中的查询参数部分,并通过get方法来获取具体的参数值。

三、利用正则表达式

如果不想使用内置对象来获取URL参数值,还可以通过正则表达式来提取URL中的指定参数值。

示例代码如下:

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

console.log(getParam('param1')); // value1
console.log(getParam('param2')); // value2

上面的代码通过正则表达式匹配URL中的指定参数值,并返回参数值。需要注意的是,由于URL中的参数值可能会经过编码,所以需要对获取的结果进行解码。

总体来说,以上三种方法都可以实现获取URL中的参数值,具体使用哪种方法可以根据实际场景来选择。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:原生JS获取URL链接参数的几种常见方法 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • jquery动态遍历Json对象的属性和值的方法

    当我们需要处理 Json,并且使用 jQuery 时,经常需要遍历 Json 对象的属性和值,以下是几种常见的方法: 方法一:$.each()方法 使用 $.each() 方法可以遍历 Json 对象的属性和值。这个方法有两个参数,第一个参数为被遍历的对象,第二个参数为一个回调函数,回调函数的参数是索引和属性值。示例代码如下: var data = { &q…

    JavaScript 2023年5月27日
    00
  • 常用的javascript设计模式

    常用的JavaScript设计模式 设计模式是在经验总结的基础上,提炼出的一些经典模板化的软件设计经验。在JavaScript中,同样存在一些常用的设计模式,这些设计模式可以帮助开发者快速、高效地完成开发任务。下面是常用的JavaScript设计模式: 1. 单例模式 单例模式是指一个类只能被实例化一次,并且提供了访问该实例的全局访问点。它在JavaScri…

    JavaScript 2023年5月18日
    00
  • 老生常谈JavaScript 正则表达式语法

    老生常谈JavaScript 正则表达式语法攻略 什么是正则表达式 正则表达式是用来匹配字符串中特定模式的表达式。在 JavaScript 中,正则表达式被定义为一个 RegExp 对象。使用正则表达式的方法是通过调用 RegExp 对象的方法。 正则表达式基础语法 正则表达式由一个或多个字符和特殊字符组成。其中特殊字符有特定的含义,例如.代表任意字符,[a…

    JavaScript 2023年6月10日
    00
  • JavaScript 类的封装操作示例详解

    JavaScript类的封装操作示例详解 类是现代 JavaScript 开发中最常见的封装形式之一,通过类的封装可以将相关代码组织在一起,实现更好的封装和抽象。本篇攻略将介绍 JavaScript 类的封装操作,并提供两个示例供参考。 定义一个类 定义一个类的基础语法与 C++、Java 等语言类似,通过 class 关键字加上类的名称定义一个类,类的主体…

    JavaScript 2023年6月10日
    00
  • 详解堆的javascript实现方法

    详解堆的javascript实现方法 堆的定义 堆是一种特殊的树形数据结构,其每一个节点都有一个值,通常所表达的语义是“子节点的值都不小于(或都不大于)父节点的值”。堆可以用数组或者树形表示。堆的某个节点与其子节点之间还有一定的大小关系,因此堆又分为最大堆和最小堆。 堆的属性 最大堆:对于所有节点i的值均不小于它的子节点的值,根节点为最大值; 最小堆:对于所…

    JavaScript 2023年6月10日
    00
  • JS中强制类型转换的实现

    JS中强制类型转换的实现是通过一组内置函数来完成的,这些函数会将一个数据类型转换为另一种数据类型。通常情况下,JS会自动进行隐式类型转换,但是有些情况下我们需要手动进行强制类型转换。 强制类型转换的相关函数如下: parseInt():将字符串转换为整数。 parseFloat():将字符串转换为浮点数。 String():将其他类型的值转换为字符串。 Bo…

    JavaScript 2023年5月28日
    00
  • canvas压缩图片转换成base64格式输出文件流

    下面是使用canvas压缩图片并转换为base64格式输出文件流的完整攻略: 步骤一:html文件部分 首先,我们需要在html文件中添加一个input元素,用于选择要上传的图片。代码如下: <label for="image_upload">选择图片:</label> <input type="f…

    JavaScript 2023年5月19日
    00
  • Vue中router-link如何添加mouseover提示

    要在Vue中使用mouseover提示,我们可以使用title属性。而对于router-link组件,要使用mouseover提示,我们可以在组件内部使用slot来传递title属性。 以下是添加mouseover提示的步骤: 在router-link标签内部使用slot,传递属性title,如下所示: <router-link to="/&…

    JavaScript 2023年6月11日
    00
合作推广
合作推广
分享本页
返回顶部