快速获取url中的参数

网友投稿 1126 2022-11-25

快速获取url中的参数值

快速获取url中的参数值

1、获取当前url的方法

当前url = 'href = window.location.href // 获取完整 url路径var search = window.location.search // 获取从?开始的参数部分复制代码

2、将url中的参数转换成中文

知识点 来自W3C

编码​​encodeURI()​​​ 解码​​decodeURI()​​

字符串作为 URI 进行编码。对 / ? : @ & = + $ # 不会转义。

编码 ​​encodeURIComponent()​​​ 解码 ​​decodeURICompnent()​​

把字符串作为 URI 组件进行编码。不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号 - _ . ! ~ * ' ( ) 进行编码:其他字符(比如 :;/?:@&=+$,# 这些用于分隔 URI 组件的标点符号),都是由一个或多个十六进制的转义序列替换的。

3、获取URL参数

url = decodeURI(search) // 编码字符 解码var splitIndex = url.indexOf('?') // 返回第一个?号的位置var str = url.substring(splitIndex + 1) // 获取到查询参数复制代码

获取url中某一个参数的值的方法

var getStrParam = function (str, name) {var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");var r = str.match(reg);if (r != null) return r[2];return '';}复制代码

获取url中所有的参数,序列在在一个对象中;

var getAllUrlParam = function(str) {var urlArr = str.split('&')var obj = {}for(var i = 0; i < urlArr.length; i++) {var arg = urlArr[i].split('=')obj[arg[0]] = arg[1]}return obj}复制代码

一道练手题送给大家:将URL中的参数序列化在一个对象中,相同的key存放在一个数组中,值为空的key,默认为true?

var url = '= {q: '参数', // 中文page: "1",type: true, // 空值为turekey: ["aa", "bb"] // 相同的key放在数组中}复制代码

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:文件上传封装
下一篇:buf.writeDoubleBE()函数详解
相关文章

 发表评论

暂时没有评论,来抢沙发吧~