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

yizhihongxing

获取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日

相关文章

  • JavaScript与C# Windows应用程序交互方法

    JavaScript与C# Windows应用程序交互方法 本文将介绍在 Windows 应用程序中如何实现 JavaScript 与 C# 相互通信的方法,主要包括以下内容: 通过 WebView 控件实现 JavaScript 与 C# 的通信 JavaScript 调用 C# 方法示例 C# 调用 JavaScript 方法示例 实现 JavaScri…

    JavaScript 2023年5月27日
    00
  • asp.net 防止用户通过后退按钮重复提交表单

    防止用户通过后退按钮重复提交表单的方法有很多种,常见的方法包括以下几个步骤: 使用Post-Redirect-Get(PRG)模式,即在表单提交后,将用户重定向到一个新的页面,该页面不包含表单。这样,用户通过后退按钮返回前一个页面时,就不会再次提交表单。在ASP.NET中,可以使用Response.Redirect方法或者Server.Transfer方法来…

    JavaScript 2023年6月11日
    00
  • Javascript摸拟自由落体与上抛运动原理与实现方法详解

    Javascript模拟自由落体与上抛运动原理与实现方法详解 原理 自由落体是指在重力作用下,物体沿竖直方向做自由运动。上抛运动是指物体受到一个斜向上的初速度后,在重力作用下做抛体运动。 在Javascript中,我们可以通过模拟物体在受到重力作用时的加速度来实现自由落体和上抛运动的效果。 对于自由落体和上抛运动,我们需要掌握以下公式: 自由落体公式 在重力…

    JavaScript 2023年5月28日
    00
  • JS自动倒计时30秒后按钮才可用(两种场景)

    当我们需要用户在规定时间内完成某些操作,而不希望用户在规定时间之前提交多次请求时,可以使用JS自动倒计时,以此限制用户在规定时间之前不能再触发该操作。 以下是JS自动倒计时的完整攻略,包含两种场景的具体实现方法。 场景一:按钮点击后30秒后才可再次触发 HTML代码 首先,我们需要在HTML代码中创建一个按钮,例如以下代码: <button id=&q…

    JavaScript 2023年6月10日
    00
  • Qiankun Sentry 监控异常上报无法自动区分项目解决

    完整攻略如下: Qiankun Sentry 监控异常上报无法自动区分项目解决 问题描述 在使用 Qiankun 进行微前端架构开发时,可能会出现 Sentry 监控异常上报无法自动区分项目的问题。具体表现为:在一个微应用抛出异常,异常信息被上报到了主应用的 Sentry 中,而无法定位到哪个微应用抛出了异常。 原因分析 这个问题的根本原因是 Sentry …

    JavaScript 2023年5月28日
    00
  • 详解JavaScript基础知识(JSON、Function对象、原型、引用类型)

    下面我来详细讲解“详解JavaScript基础知识(JSON、Function对象、原型、引用类型)”的完整攻略。 JSON 什么是 JSON JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,常用于前后端数据传输。它基于 JavaScript 对象结构,但是具有更严格的格式要求,在很多编程语言中也得到了支持。 JS…

    JavaScript 2023年5月27日
    00
  • eval与window.eval的差别分析

    eval 与 window.eval 的差别分析 简述 eval 和 window.eval 都可以用来动态执行 JavaScript 代码。它们之间的主要差别在于执行的上下文环境不同。 eval:执行的代码在当前的上下文环境中执行,可以访问当前作用域中的变量和函数。 window.eval:执行的代码在全局环境中执行,不能访问当前上下文环境中的变量和函数。…

    JavaScript 2023年6月10日
    00
  • TS 中 never,void,unknown类型详解

    那么我们来详细讲解一下 TS 中 never、void 和 unknown 类型的相关知识点。 never 类型 never 类型表示永不存在的类型。也就是说,无法终止的函数或者总是抛出错误的函数的返回类型就是 never。 在实际使用中,通常用于处理不应该出现的情况或者用于避免编写无用的代码。 下面是一个示例函数,它总是会抛出异常: function th…

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