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

获取URL参数值

  1. 定义一个函数getUrlParam:利用正则表达式获取url参数的值

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

示例:假设当前的url为https://www.example.com/index.html?id=123&name=example,则以下代码可以获取到id的值

javascript
var id = getUrlParam('id');
console.log(id); //输出123

  1. 利用URLSearchParams对象获取URL参数

javascript
var params = new URLSearchParams(window.location.search);
var id = params.get('id');
console.log(id); // 输出123

示例:假设当前的url为https://www.example.com/index.html?id=123&name=example,则以下代码可以获取到id的值

javascript
var params = new URLSearchParams(window.location.search);
var id = params.get('id');
console.log(id); // 输出123

将URL参数转换成json对象

  1. 定义一个函数parseUrlParam为url参数字符串转换成json对象

javascript
function parseUrlParam(url) {
var params = {};
url.split("?")[1].split("&").forEach(function (param) {
var temp = param.split("=");
params[temp[0]] = temp[1];
});
return params;
}

示例:假设当前的url为https://www.example.com/index.html?id=123&name=example,则以下代码可以获取到包含id和name的json对象

javascript
var params = parseUrlParam(window.location.href);
console.log(params); //{id: "123", name: "example"}

  1. 利用URLSearchParams对象转换成json对象

javascript
var params = new URLSearchParams(window.location.search);
var obj = {};
for (var key of params.keys()) {
obj[key] = params.get(key);
}
console.log(obj); //{id: "123", name: "example"}

示例:假设当前的url为https://www.example.com/index.html?id=123&name=example,则以下代码可以获取到包含id和name的json对象

javascript
var params = new URLSearchParams(window.location.search);
var obj = {};
for (var key of params.keys()) {
obj[key] = params.get(key);
}
console.log(obj); //{id: "123", name: "example"}

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JS根据key值获取URL中的参数值及把URL的参数转换成json对象 - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • 基于touch.js手势库+zepto.js插件开发图片查看器(滑动、缩放、双击缩放)

    首先讲一下所需工具: touch.js:一款轻量级的移动端手势库,用于实现图片的缩放、滑动等手势操作; Zepto.js:一款轻量级的JavaScript库,可用于DOM操作、事件绑定等常见操作。 如果你已经准备好了这些工具,接下来我们就可以开始制作基于touch.js和Zepto.js的图片查看器了。 步骤一、创建HTML结构 首先我们需要先创建出HTML…

    JavaScript 2023年6月11日
    00
  • JavaScript自定义日期格式化函数详细解析

    JavaScript自定义日期格式化函数详细解析 在JavaScript中,日期是一个非常常见的数据类型。在处理日期时,我们通常需要对日期的格式进行调整,以便更好地展示给用户。为此,我们可以使用JavaScript自带的日期格式化函数toLocaleString()等来格式化日期,但是这些函数的格式选项非常有限,不够灵活。因此,本文将介绍如何自定义JavaS…

    JavaScript 2023年5月27日
    00
  • js表单元素checked、radio被选中的几种方法(详解)

    当我们需要在Web页面中收集用户输入时,表单是不可缺少的工具之一。而表单元素中的checkbox和radio这两种类型的输入框对于选项的选择有着重要的作用。然而,如何通过JavaScript获取选中的checkbox或radio的值呢?下面我们将详细讲解这个问题。 1. checked属性 对于单个的checkbox,我们可以通过其checked属性来检查其…

    JavaScript 2023年6月10日
    00
  • ES2015 正则表达式新增特性

    ES2015 正则表达式新增特性是指 ECMAScript 2015 标准中新增了一些正则表达式相关的语法和特性。在这里我将为您详细讲解这些新增特性,以及它们的使用示例,以便您更好地掌握正则表达式的应用。 1. 新增的 y 修饰符 ES2015 引入了 y 修饰符,旨在实现粘性匹配。它与 g 修饰符的作用类似,但是 y 修饰符只能在匹配的字符串开头执行匹配,…

    JavaScript 2023年6月10日
    00
  • JavaScript中的this关键字用法详解

    接下来我将为大家详细讲解“JavaScript中的this关键字用法详解”的攻略。 什么是this关键字 在JavaScript语言中,this关键字表示当前执行代码的对象。 具体而言,this指向根据当前所处的上下文环境而变化的一个关键字。这个上下文环境可以是全局环境、函数环境,或者是在某个对象中调用。 this关键字的四种调用方式 在JavaScript…

    JavaScript 2023年6月10日
    00
  • 基于JavaScript实现年月日三级联动

    下面我就来详细讲解一下如何基于JavaScript实现年月日三级联动。 实现原理 实现年月日三级联动主要需要三个下拉框,分别表示年、月、日。通过JavaScript动态生成年份和月份的下拉框选项,然后根据选中的年份和月份动态生成对应的日期选项。在选项变化时,页面自动根据选中内容更新显示内容。 具体实现流程如下: 定义HTML页面,包括三个下拉框,分别表示年、…

    JavaScript 2023年6月10日
    00
  • js使用swiper实现层叠轮播效果实例代码

    以下是详细的js使用swiper实现层叠轮播效果实例代码的攻略。 1. 环境搭建 1.1 引入Swiper 第一步需要引入Swiper,可以使用CDN方式引入,也可以下载后引入。 <link rel="stylesheet" href="https://unpkg.com/swiper/swiper-bundle.min.…

    JavaScript 2023年6月11日
    00
  • 浅谈regExp的test方法取得的值变化的原因及处理方法

    下面是“浅谈regExp的test方法取得的值变化的原因及处理方法”的完整攻略: 什么是regExp的test方法 RegExp是JavaScript中的正则表达式对象,test()是它的一个方法,用于测试一个字符串是否符合某个正则表达式的匹配规则。test()方法返回一个布尔值,如果符合规则则返回true,否则返回false。 let str = ‘abc…

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