js获取 url 参数

获取 url 中的参数

  1. 指定参数名称,返回该参数的值 或者 空字符串

  2. 不指定参数名称,返回全部的参数对象 或者 {}

  3. 如果存在多个同名参数,则返回数组

  4. 不支持URLSearchParams方法

function getUrlParam(sUrl, sKey) {let sParam = sUrl.split("?")[1].split("#")[0];  //key=1&key=2&key=3&test=4let arr = sParam.split("&"); //["key=1","key=2","key=3","test=4"]let res;if( sKey ){//如果指定参数res = [];for( let i = 0; i < arr.length; i++ ){var temp = arr[i].split("=");if( temp[0] === sKey ){res.push( temp[1] ); //res只存储指定key值的结果}}if( res.length == 1 ){return res[0];}else if( res.length == 0 ){return "";}else{return res;}}else{//如果不指定参数res = {};if( sParam==undefined || sParam=="" ){return res;}for( let i = 0; i < arr.length; i++ ){var temp = arr[i].split("=");if( !(temp[0] in res) ){res[temp[0]] = []; //temp[0]为键,temp[1]的数组为值}res[temp[0]].push(temp[1]); //使用变量动态访问对象属性用obj[a]不能用obj.a}}return res;
}
var paramArr = sUrl.split('?')[1].split('#')[0].split('&'); // 取出每个参数的键值对放入数组
const obj = {};
paramArr.forEach(element => {const [key, value] = element.split('=');  // 取出数组中每一项的键与值
if(obj[key] === void 0){   // 表示第一次遍历这个元素,直接添加到对象上面
obj[key]=value
} else{obj[key]=[].concat(obj[key],value); // 表示不是第一次遍历说明这个键已有,通过数组存起来。
}});
return sKey===void 0? obj:obj[sKey]||''   // 如果该方法为一个参数,则返回对象。
//如果为两个参数,sKey存在,则返回值或数组,否则返回空字符。
function getUrlParam(sUrl, sKey) {var r=/(\?|&)(\w+)\=(\w+)/g;var res={};while(r.exec(sUrl)!=null){if(res[RegExp.$2]){var temp=res[RegExp.$2];res[RegExp.$2]=[].concat(temp,RegExp.$3)}else{res[RegExp.$2]=RegExp.$3;}}if(sKey) {return res[sKey]||'';}return res;
}

js获取 url 参数相关推荐

  1. SQLAlchemy中模糊查询;JS中POST带参数跳转;JS获取url参数

    SQLAlchemy中模糊查询,如何like多个关键字 JS中POST带参数跳转 一个项目中要跳转到另外一个项目,还需要带参数 考虑到安全性的问题,最好是用POST跳转,不能再URL中拼参 所以找到了 ...

  2. js 获取url参数问题

    网上常常找到的js获取url参数的方法是: /**  * @param {String} name   参数名称  * @param {String} url    请求的Url,可以填,如果不填为当 ...

  3. html js发送http请求数据格式,JS获取url参数,JS发送json格式的POST请求方法

    一.获取url所有参数值 function US() { var name, value; var str = location.href; var num = str.indexOf("? ...

  4. js 获取url参数(函数封装)

    本篇总结js获取url参数的几种方式,再最后,封装了一个函数,用来获取url中的参数. (一)关于获取url的一些基础知识 1, window.location.href 整个URl字符串(在浏览器中 ...

  5. 原生js获取URL参数

    原生js获取URL参数 function getUrlParams(name) { // 不传name返回所有值,否则返回对应值var url = window.location.search;//s ...

  6. js获取url参数vue.js获取url参数 JQ获取url参数

    在WEB开发中,时常会用到javascript来获取当前页面的url网址信息,在这里是我的一些获取url信息的小总结. 1.window.location.href(设置或获取整个 URL 为字符串) ...

  7. js获取url 参数方法封装

    js获取url 参数方法封装 // 获取url 参数getUrlParam(params) {let url = location.href;url = url.replace("?&quo ...

  8. js 获取 url 参数 URLSearchParams

    js 获取 url 参数 方法一 URLSearchParams 方法 // 创建一个URLSearchParams实例 const urlSearchParams = new URLSearchPa ...

  9. .NET手记-JS获取Url参数

    最近为App做活动专区,其中很多活动都是采用html 5页面来制作的.一方面体量较小,制作快速,更新维护容易:另一方面,嵌入App后适配效果也不会很差. 这里我们采用混编形式来从native app传 ...

最新文章

  1. 十、探索性数据分析的图形化探索
  2. Fragment的布局中自定义Layout的onSizeChanged添加组件失败的问题
  3. linux排序语言,Go语言排序sort的使用
  4. spring防止爬虫_Spring安全:防止暴力攻击
  5. 远程mysql定时删除数据_mysql定时备份数据库 删除历史文件 将备份数据库传送到另外服务器...
  6. 树莓派之OLED12864视频播放—BadApple
  7. 运维工程师mysql面试题及答案_系统运维工程师面试题及参考答案
  8. Hadoop概述--四大组件架构及其关系
  9. 继电保护原理4-自动重合闸
  10. linux sd卡 驱动程序,详解linux 驱动编写(sd卡驱动)
  11. shopex手机版之触屏版,html5版,ShopEx手机触屏版V3.0重磅发布!优化用户界面,增强用户体验...
  12. (转)原子时代来临-Intel革命性Atom透析
  13. 流媒体协议(三):FLV协议
  14. 三国志战略版:魏国新黑科技,程昱春华满宠
  15. L13 操作系统的这棵树
  16. 小米note3android8.0,小米Note3 lineage16 安卓9.0 极致省电 纯净 完美root Xposed 经典版...
  17. 你知道吗?计算机界也有诺贝尔奖!
  18. 火狐的调试利器-----Firebug
  19. 用JavaScript查找斜边
  20. Qt 图像放大缩小拖动

热门文章

  1. HDU-用N个三角形最多可以把平面分成几个区域
  2. 推荐一个非常实用的程序员导航网站,码农必备!
  3. DeepPath: A Reinforcement Learning Method forKnowledge Graph Reasoning
  4. 计算机组成原理移位寄存器实验报告,移位运算器实验报告
  5. Tuxera NTFS2023Mac电脑免费U盘硬盘读写工具
  6. 计算机音乐制作专业艺考,音乐艺考的专业有哪些
  7. OWASP - 2021
  8. QFile和QDir
  9. rmp mysql_整理linux 下rmp格式Mysql安装
  10. Construct2 水波特效