`

JavaScript 读 URL 参数改进版

阅读更多
   《JavaScript权威指南》介绍的更简洁的取 URL 参数的方法,不用正则表达式,用一次循环。一次性返回一个对象的好处是只需要调用一次此函数,参数和值对可以存在一个对象里,以后再取其它参数的值就不用再调用此函数了,只要取对象的属性就行了。
function getArgs(){
    var args = new Object( );  //声明一个空对象

    var query = window.location.search.substring(1);     // 取查询字符串,如从 http://www.snowpeak.org/testjs.htm?a1=v1&a2=&a3=v3#anchor 中截出 a1=v1&a2=&a3=v3。

    var pairs = query.split("&");                 // 以 & 符分开成数组

    for(var i = 0; i < pairs.length; i++) {

        var pos = pairs[i].indexOf('=');          // 查找 "name=value" 对

        if (pos == -1) continue;                  // 若不成对,则跳出循环继续下一对

        var argname = pairs[i].substring(0,pos);  // 取参数名

        var value = pairs[i].substring(pos+1);    // 取参数值

        value = decodeURIComponent(value);        // 若需要,则解码

        args[argname] = value;                    // 存成对象的一个属性

    }

    return args;                                  // 返回此对象

}

//调用:假如现在有个url="index.jsp?p1=111&p2=2222&p3=3333"

var ps = getArgs();
var p1value = ps["p1"]; //第一个参数值 等价表达方式 ps[0]
var p2value = ps["p2"]; //第二个参数值 等价表达方式 ps[1]
var p3value = ps["p3"]; //第三个参数值 等价表达方式 ps[2]



分享到:
评论

相关推荐

    JavaScript 读URL参数增强改进版版

    在Web开发中,JavaScript常常被用来处理URL参数,这在动态交互和页面跳转时尤为关键。本文将详细介绍一个增强改进版的JavaScript函数,用于读取URL中的参数,特别处理了URL中包含`#`(哈希符号)的情况,并采用了点...

    JavaScript URL参数读取改进版

    本文将探讨一种改进的JavaScript方法来读取URL参数,这种方法来源于《JavaScript权威指南》。 首先,我们来看一个传统的方法来获取URL参数。这个方法涉及到使用`location.href`获取当前URL,然后通过`substring()`...

    NodeJS的url截取模块url-extract的使用实例

    参数包括`url`或`urls`(待处理的URL地址或数组),`callback`(处理完成后的回调函数),以及可选的`option`对象,包含`id`(自定义URL的ID)、`image`(自定义截图保存路径)、`groupId`(用于识别一组URL)和`...

    javascript帮助文档api

    4. **函数**:JavaScript中的函数是第一类对象,可以作为参数传递,也可以作为返回值。函数表达式和函数声明是两种定义函数的方式,还有箭头函数的简洁形式。 5. **数组**:JavaScript提供了Array对象,用于处理一...

    javascript不同页面传值的改进版

    在JavaScript中,不同页面间传递数据通常涉及到URL参数、本地存储(如localStorage或sessionStorage)或者利用cookie等技术。在这个特定的场景中,我们讨论的是一个改进的JavaScript方法,它允许在同一个页面上的多...

    可上传图片的Java版htmlarea编辑器改进版.rar

    这个"可上传图片的Java版htmlarea编辑器改进版"是针对原版HTMLArea的一个增强版本,特别加入了图片上传的功能,使得用户可以直接在编辑器内上传图片并嵌入到文档中,极大地提高了编辑的便捷性和用户体验。...

    基于 JavaScript 的网盘文件下载地址获取工具

    1. 分析网盘页面结构,找到关键的请求 URL 和参数。 2. 使用 JavaScript 发送登录请求,获取会话或 Cookie。 3. 搜索文件信息,可能需要遍历文件列表或解析特定的 JSON 响应。 4. 获取文件的下载链接,这可能需要...

    convertjs一个简单的JavaScript转换库

    "convertjs一个简单的JavaScript转换库" 是一个专为JavaScript开发者设计的工具,它提供了一系列方便的函数,用于在不同数据类型之间进行转换。这个库的主要目的是简化开发过程,尤其是在处理数据格式化和类型转换时...

    servlet增删改查改进版(增加模糊查询)

    根据HTTP方法,我们使用`request.getParameter()`获取URL参数或`request.getInputStream()`解析请求体。 3. **构建SQL语句**:将用户输入转化为SQL查询语句。模糊查询通常涉及`LIKE`关键字,例如`SELECT * FROM ...

    jeesite整合百度Ueditor在线编辑器改进版

    "jeesite整合百度Ueditor在线编辑器改进版"是一个针对Java开发者的资源,它指导开发者如何将流行的百度Ueditor集成到jeesite开源框架中,以提供强大的文本编辑功能。 Jeesite是一个基于Spring Boot、MyBatis Plus、...

    nodejs-demo改进版

    2. **路由处理**: 通过分析请求 URL 和方法,决定执行相应的业务逻辑,这通常涉及到中间件的使用,如 Express 框架。 3. **文件系统操作**: 如何使用 `fs` 模块读取、写入或操作本地文件。 4. **异步编程**: 学习...

    基于JavaScript的可视化本地部署接口管理平台

    每个版本的ECMAScript都引入了新的特性和改进,例如ES6(ECMAScript 2015)引入了类、模块、箭头函数等新特性,提升了代码的可读性和组织性。在接口管理平台的开发中,ECMAScript的最新版本可以保证代码的现代性和...

    Javascript前台简单验证插件2

    这篇博客文章"Javascript前台简单验证插件2"可能介绍了一种改进版的前端验证解决方案,通过链接可以访问到更多详细内容。 在前端验证中,JavaScript扮演了核心角色,因为它是浏览器内唯一可以实时与用户交互并处理...

    javascipt complete reference

    根据提供的文件信息,我们可以将《JavaScript 2.0 完全参考手册》第二版这本书的知识点进行详细地归纳总结。本书由 Thomas Powell 和 Fritz Schneider 合著,出版社为 McGraw-Hill/Osborne,出版年份为 2004 年,共 ...

    javascript 生成一维码

    url: 'your-api-url', type: 'GET', success: function(data) { $('#barcode').barcode(data.code, 'code128'); }, error: function(error) { console.error('Error:', error); } }); ``` 在这个例子中,...

    openlayers4.0+arcgis10.1+token

    6. **更新token**: token有有效期,需要在过期前重新获取并更新图层的URL参数。 **示例代码(简化版)**: ```javascript // 引入OpenLayers库 import { Map, View, TileLayer } from 'ol'; // 获取ArcGIS Token ...

    jQuery1.7手册html版

    开发者可以轻松查阅API文档,了解每个方法的参数、返回值以及示例。此外,HTML格式还支持搜索功能,便于快速定位所需信息。 **使用指南** 1. **index.html**:这是手册的主页面,包含了目录和各种主题的链接。通过...

Global site tag (gtag.js) - Google Analytics