JS获取GET参数

菱Q系列串行通信模块QJ71C24N:概述与特点 该模块支持多种串行通信协议,包括RS-232、RS-422和RS-485等,并提供了可靠的数据传输和高效的通信性能。菱Q系列串行通信模块QJ71C24N是一款功能强大的模块,具有多种通信协议支持、高速数据传输、多点通信能力和简化配置与使用等特点。简化配置和使用:QJ71C24N模块具有简单易用的配置工具和用户界面,使得用户能够快速进行模块的设置和调整。高速数据传输:QJ71C24N模块提供了高速的数据传输能力,可实现快速的数据交换和通信。本文将介绍QJ71C24N模块的概述和特点,并提供相应的源代码示例。 阅读详情

对于 URL,我们需要了解更多,因为我们的开发中可能会需要提取URL的部分信息来做不同的事情,事实上这也是与后端交互的一种独特的方式,当然这肯定是安全的,当请求被返回,关于 url 的信息就被记录在了 Window 对象的 Location对象中,取值的结果并不随着用户手动修改地址栏中的字符而发生任何改变,这一点是很重要的。了解了这些内容,那么我们从下面这张图开始吧:


图片中间那一行较长的字符串是一个完整的 URL,它包含了一个 URL 中可能包含的任何部分:协议、域名、端口号(当然,大多数情况下,我们在浏览网页的时候并没有看到端口号,因为他被隐藏了,默认就是80端口,你加上也不会有错)、路径、参数、描点。在 JavaScript 中,获取到这一行字符串的方法是访问 window.location.href,href属性包含了一个页面完整的 URL。如果想得到 URL 中某一部分的值,我们可以通过复杂、繁琐的正则表达式来解析这个完整的 URL,不过更方便的办法是通过 location 的其他属性来获取。比如 location 的 protocol 属性中记录了带冒号的协议名,pathname 属性存储着路径名,这些属性是 href 的分离,给开发者带来了很多方便。下面的表格中罗列了 location 下所有的属性,以及他们各自记录的值。如果不能理解表格中的内容,那么上面那张图中的色块和文字,形象地描述了各属性在 URL 中对应的位置。

属性值
href完整的 URL
protocol协议
hostname主机名
host主机名加端口号
port的端口号
pathname当前 URL 的路径部分
searchURL 的查询部分
hash#开始的锚

值得注意的是,上面的属性都是可选的,这表示我们可以通过 JavaScript 改变他们的值。这些属性大都一目了然非常简单,唯有 search 部分是比较麻烦的,search部分是以 GET 方式传给后台的参数,以 ? 开始,& 作为分隔符,= 赋值的序列化的字符串,如此一来通过 location.search 得到的值往往并不是想要得到的最终结果,通过 search 的结构来分析,我们可能更想要得到的结果是一个包含明确对应关系的关联数组。于是我们需要对 location.search 中得到的字符串进行进一步的处理。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
function getArgs() {
    var args = {};
        var query = location.search.substring(1);
         // Get query string
    var pairs = query.split("&");
                    // Break at ampersand
     for(var i = 0; i < pairs.length; i++) {
            var pos = pairs[i].indexOf('=');
             // Look for "name=value"
            if (pos == -1) continue;
                    // If not found, skip
                var argname = pairs[i].substring(0,pos);// Extract the name
                var value = pairs[i].substring(pos+1);// Extract the value
                value = decodeURIComponent(value);// Decode it, if needed
                args[argname] = value;
                        // Store as a property
        }
    return args;// Return the object
 }

上面的代码来自于《JavaScript 权威指南》一书中。getArgs 方法不接收参数,它主动提取 URL 中的 search 部分加以解析,并返回一个 JSON。例如我们最开始那张图片中的 URL ,使用 getArgs 方法将会得到下面的结果:

1
2
3
var search = {
    search:html
}

这样,关于 URL 的所有信息都能得到一个非常明确的结果,很简单。

不过更推荐使用正则表达式来解析URL,其运行效率更高,代码也更加简洁。

1
2
3
4
5
6
7
8
9
10
function getArgs(){
    var args = {};
    var match = null;
    var search = decodeURIComponent(location.search.substring(1));
    var reg = /(?:([^&]+)=([^&]+))/g;
    while((match = reg.exec(search))!==null){
        args[match[1]] = match[2];
    }
    return args;
}

JavaScript decodeURIComponent() 函数

JavaScript 全局对象

定义和用法

decodeURIComponent() 函数可对 encodeURIComponent() 函数编码的 URI 进行解码。

语法

decodeURIComponent(URIstring)
参数 描述
URIstring 必需。一个字符串,含有编码 URI 组件或其他要解码的文本。

返回值

URIstring 的副本,其中的十六进制转义序列将被它们表示的字符替换。

实例

在本例中,我们将使用 decodeURIComponent() 对编码后的 URI 进行解码:

<script type="text/javascript">

var test1="http://www.w3school.com.cn/My first/"

document.write(encodeURIComponent(test1)+ "<br />")
document.write(decodeURIComponent(test1))

</script>

输出:

http%3A%2F%2Fwww.w3school.com.cn%2FMy%20first%2F
http://www.w3school.com.cn/My first/

C#WPF常用的9种布局方式详解 本文介绍WPF中常用的九种布局,Grid、StackPanel、WrapPanel、DockPanel、UniformGrid、Canvas、ScrollViewer、ViewBox、Border。 阅读详情

相关推荐

什么事LLVM和Clang?Clang与GCC有什么区别?Clang如何使用?

这个问题主要讲Xcode编译器的认知,在学习iOS之前有必要学习一下Objective-C的编译环境。 在了解LLVM和Clang之前,先得了解一下什么是编译器。 编译器是一种计算机程序,它将某种编程语言(高级编程语言)写成的源代码转换成另一种编程语言(低级编程语言)。一个现代编译器的主要工作流程为:源代码->预处理器->编译器->目标代码->链接器->可执行程序...

Welcome~ 9723

JS获取页面 GET 方式请求的参数

JS获取页面 GET 方式请求的参数 页面的URL: http://localhost:8080/erp?name=王大炮&amp;age=12 要求:或者传递的name和age值 方法一:正则分析法 /** * 根据变量名获取匹配值 */ function getQueryString(name) { var reg = new RegExp("(^|&amp;)" + name +...

借物小人的博客 3万+

DVWA靶场实战:从搭建到渗透测试的完整指南

本文详细介绍了DVWA靶场的搭建与渗透测试全流程,涵盖LAMP环境搭建、Docker部署及集成环境安装三种方式。通过SQL注入、文件上传漏洞等实战案例,帮助读者掌握Web安全测试技巧,并提供防御方案与进阶调优建议,是网络安全学习的实用指南。

weixin_28312391的博客 489

JavaScript获取get方式的请求参数值

1、通过JavaScript获取浏览器的URL的实现 window.location.href其实只是用到了JavaScript的基础的window对象。 2、首先看看单纯的通过javascript是如何来获取url中的某个参数, function getUrlParam(name) { //构造一个含有目标参数的正则表达式对象 var reg = new RegExp("(^|

Learning 1万+

手搓ZLMediaKit实现拉流推流系列3(RK3588上YOLO系列拉流、MPP解码+编码、推流全流程)

 前段时间比较忙,一直没有时间补充后续的内容。今天终于抽出空来,立马进入码字环节:手搓ZLMediaKit实现拉流推流系列在本篇也终于迎来了完结篇,在本篇文章中,你将看到以下一整套完整流程:使用ZLMediaKit拉流---MPP解码---Yolo模型进行推理---MPP编码并推流。

m0_46303486的博客 2174

pgsql:还原数据库后出现重复序列导致“more than one owned sequence found“报错问题的解决

pgsql数据库通过备份数据库文件进行还原时,如果表中有自增序列,还原后可能会出现重复的序列,此时若向表中插入新行时会出现“more than one owned sequence found”的报错提示。还原数据库时把序列取消勾选,选择不还原序列。因为还原表的同时,会自动将自增序列还原上去,此处勾选会导致数据库重复创建序列。点击还原数据库完毕后,可以看到序列仅有一个,没有出现重复序列。但此时的序列当前值是从1开始的,需要重置。点击菜单“其它”-》“序列”,可以看到有多个重复序列。

奋斗鱼 1043

js获取get请求参数

描述 页面跳转时获取url问号后面带的参数 触发在html或者js中都可以 实施 js var $_GET = (function(){ var url = window.document.location.href.toString(); //获取的完整url var u = url.split("?"); if(typeof(u[1]) == "strin...

谁的博客 7234

SAP 经营范围(Operating Concern) 和业务范围 (Business Area) 在核算架构或是管理架构中的区别和联系分别是什么 请给具体的示例

摘要:SAP系统中,业务范围(Business Area)和经营范围(Operating Concern)在核算架构中具有不同功能。业务范围是FI/CO共用维度,用于跨公司码的业务线核算(如电子产品、机械设备),支持内部管理和简单对外报表。经营范围则是CO-PA专属维度,聚焦获利能力分析,可细化到产品+客户+区域组合(如分析手机在华东区域的获利情况)。两者存在层级关联:经营范围包含业务范围作为基础维度,业务范围数据会传递至经营范围进行深度分析。实际应用中需先配置业务范围,再设置经营范围并关联相关维度,共同支

金牌架构师 95

js 获取get参数方法

function GetRequest() { var url = location.search; //获取url中"?“符后的字串 var theRequest = new Object(); if (url.indexOf(”?") != -1) { var str = url.substr(1); strs = str.split("&"); for(var i = 0; i < strs.length; i ++) { theRequest[strs[i].split("=")[0]

weixin_44824389的博客 6694

Windows 下 Hermes Agent(爱马仕)安装全记录:从零到一的保姆级图文教程

本文主要介绍了Windows 下 Hermes Agent(爱马仕) 安装全记录:从零到一的保姆级图文教程,希望能对学习使用 Hermes Agent 的同学们有所帮助。 文章目录 1. 背景 2. 实战教程 2.1 步骤一 安装WSL环境 2.2 步骤二 安装Python环境 2.3 步骤三 安装Hermes Agent 2.4 步骤四 修正 API Key 错误 2.5 步骤五 配置多个模型 2.6 步骤六 启动Hermes Agent 3. 常见问题及解决方案 4. 总结

weixin_43178406的博客 14万+

创建 Fiori Space 时看不到传输请求的根因与排查路径

摘要: 在创建Fiori Space时,若Transport字段下拉列表为空,通常是因为系统未找到符合要求的传输请求。主要原因是: 请求类型不匹配:需使用Customizing request而非Workbench request。 用户权限问题:当前用户需在请求下有可用的task。 客户端或系统不一致:请求需在当前客户端和正确系统(如后端)中创建。 解决方法: 在当前客户端和系统中新建Customizing request,确保包含用户task。 检查是否为前后端分离架构,确保请求创建在正确的系统。 验证

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 107

Js-使用URL对象获取GET参数

概述 一般我们自己从URL中分析和提取参数都是比较麻烦的, 所以为了防止无休止的重复造轮子, 大多数的浏览器都内置了URL对象。 有了URL对象我们就可以将URL参数很方便的解析出来。 用法 创建URL对象 创建URL对象要使用URL构造函数, URL对象接收一个url地址参数。 let u = new URL('https://blog.youkuaiyun.com/qq_45458749'); console.dir(u); // console.dir()输出对象的属性和方法 可以在控制台中看..

qq_45458749的博客 2998

PNETLab 镜像包官方下载太慢?不急,最新版本PNET_4.2.10分享!

你好,这里是网络技术联盟站,我是瑞哥。PNETLab是一个强大的网络仿真工具平台,全称Packet Network Emulator Tool Lab。它不仅允许用户进行深入的网络实验,还支持社区成员之间的实验室共享。PNETLab致力于为学习者、教师以及网络工程师提供一个全面的实验环境,以便于他们能够在实际部署前测试和验证网络配置和协议。和。这两个部分相辅相成,共同构成了一个全面且灵活的网络仿真生态系统。

网络技术联盟站 4472

【js】js获取地址中get参数

如果你同时使用多种开发语言做web开发,那么就会发现,js对于获取地址中get参数是没有官方的方法的,而php里则有非常便捷的$_GET['aaa']非常简单的方法 这里写了一个简单的方法,能使js也能简单的获取地址上的get参数 function get_query_str(){ var location_url = window.location.href; var paramet

snow_finland的专栏 2801

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

js获取php的get参数,JS获取URL地址中的GET参数

/*-----------------实现1--------------------*/function getPar(par){//获取当前URLvar local_url = document.location.href;//获取要取得的get参数位置var get = local_url.indexOf(par +"=");if(get == -1){ return fals...

weixin_42462382的博客 198

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

javascript获取自身属性(.js?后的get参数)

Document.currentScript 属性返回当前正在运行的脚本所属的 <script> 元素。调用此属性的脚本不能是 JavaScript 模块,模块应当使用 import.meta 对象。 值得注意的是,如果当前正在执行的代码是被其他代码作为回调函数或者事件处理函数调用的,那么 currentScript 属性不会指向任何 <script>元素,而是会返回 null。这个属性只在脚本被解析后首次运行时有效。 实例1(下例演示了如何检测当前正在执行脚本的 if (doc.

slongzhang的博客 8万+

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

js获取GET参数

/*-----------------实现1--------------------*/ function getPar(par){ //获取当前URL var local_url = document.location.href; //获取要取得的get参数位置 var get = local_url.indexOf(par +"=");...

aisao7105的博客 148

Js Javascript 获取Get参数

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 nu

Jinfan Zheng 的专栏 553

js如何获取当前url,并对get参数的处理

1,去掉get参数保留url部分 2.去掉参数,只去相对路径 3.获得当前路径下所有的参数  //paraName 等找参数的名称   function GetUrlParam(paraName) {     var url = document.location.toString();     var arrObj = url.split("?"); if (arrObj.length &gt...

小先生编程 5133

php js get请求参数为空,javascript 分享一个获取url get参数的方法

本函数使用到了javascript中的indexOf方法和split方法。具体代码如下:function getPara(para) {if (location.href.indexOf("?") == -1) {// 没有参数,则Do nothing.return null;} else {// 取得GET请求?号后面的字符串var urlQuery = location.href.split(...

weixin_31600305的博客 274

js获取get提交参数

工作中常遇到第三方程序调用html页面,这时候可能需要传递某些特定参数需要html获取参数并响应,需要通过js获取get提交参数,主要涉及到js对字符串的一些处理,如下 function getPar(par) { //获取当前URL var local_url = document.location.href; //获取要取得的get参数位置 var get = local_url.in...

stryang的博客 4143

在html页面中使用js获取GET参数

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33859844的博客 778

[javascript] js获取url中的get参数

主要是通过把url中?后半部分取出,&分割为数组 调用数组的map函数 ,map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。 function getQuery(key) { var query = window.location.search.substring(1); var key_values = query.split("&amp...

程序员老狼专注开发aigc或客服系统应用 340

js+jquery获取网址get参数教程

下面是一段以jquery库编写的获取url参数的方法,比原生JS要简单明了点。没有像后端那样直接获取网址参数的方法,如$_GET这样的方法。前端获取url参数比较复杂,需要用到js+,去读取、分隔网址来达到获取参数的方法。这是一个完整的js获取url参数的方法。两种方法都可以直接复制使用,需要引用jquery库。

winkexin的博客 830

使用JavaScript获取GET参数的函数

使用JavaScript获取GET参数的函数 Submitted by wayswang on 2008, October 14, 1:26 PM. Ajax相关 在网上看到的,适合在客户端处理。 调用方法:QueryGET("action"),即可获得action的值 JavaScript代码 &lt;SCRIPT language="...

入海数沙 209

javascript 使用正则表达式获取url里的GET参数

前端页面经常用JS获取页面的GET参数,JS和PHP还不一样,PHP直接$_GET 数组就能获取值。而JS则需要一通操作来从url里获取GET参数,这里简单封装了一下方法。每次获取就只需要调用一下就OK了。 要想获取GET参数,首先要清楚GET参数是什么样的。下面是一个完整的url地址,格式如下: https://host:port/path?xxx=aaa&yyy=bbb --http/https:这个是协议类型。 --host:服务器的IP地址或者域名。 --port:HTTP服务..

HXZz的博客 2301
上一篇: window.location.search.substring(1); 什么意思
下一篇: linux命令设置网卡ip及查看
HackProgramer
博客等级 码龄12年 255粉丝 23原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值