“站在巨人的肩膀上”

灵感来源:

https://segmentfault.com/a/1190000004601319

http://mp.weixin.qq.com/mp/ad_biz_info?__biz=MzAwMjU3OTY5NQ==#wechat_webview_type=2&wechat_redirect

上面一个地址,可以让你学到如何解析一个url地址,从中解析出每一个参数内容
第二个链接的问题就是参数中的键值对出现了==号,这是base64信息,如果再用=切割,就会出问题,这里就改版了一下

String.prototype.parseURL = function(){var url =this.toString()var a = document.createElement('a');a.href = url;return {source: url,protocol: a.protocol.replace(':', ''),host: a.hostname,port: a.port,query: a.search,file: (a.pathname.match(/\/([^\/?#]+)$/i) || [, ''])[1],hash: a.hash.replace('#', ''),path: a.pathname.replace(/^([^\/])/, '/$1'),relative: (a.href.match(/tps?:\/\/[^\/]+(.+)/) || [, ''])[1],segments: a.pathname.replace(/^\//, '').split('/'),params: (function() {var ret = {};var seg = a.search.replace(/^\?/, '').split('&').filter(function(v,i){if (v!==''&&v.indexOf('=')) {return true;}});seg.forEach( function(element, index) {var idx = element.indexOf('=');var key = element.substring(0, idx);var val = element.substring(idx+1);ret[key] = val;});return ret;})()};
}

调用方法:

location.href.parseURL();'http://a.com:8888/a/b.html?c=1&0=0&d===&=1'.parseURL();
//上面故意把参数写的很乱,为了测试,如果上面你的浏览器报错,说明版本较低,可以如下写法('http://a.com:8888/a/b.html?c=1&0=0&d===&=1').parseURL();

js深度解析url地址相关推荐

  1. vuejs解析url地址

    函数: // url解析函数 // ?id=111&name=567 => {id:111,name:567} export function urlParse(){let obj = ...

  2. 解析url地址的函数

    写一个解析url地址的函数,要求出来协议,主机,端口,路径,参数等信息. 例:https://php.com:8080/path/?action=login&a=user&b=pass ...

  3. js获取页面URL地址并判断URL是否包含具体值

    本文介绍jquery/js获取当前页面url地址的方法,在jquery与js中获取当前页面url方法是一样的,因为jquery没有自己相关的函数,使用js 的windows方法来获取,相关方法如下: ...

  4. JavaScript 技术篇-使用js代码获取浏览器窗口标题名,js获取页面URL地址

    用 Google 页面来举例子,Google 是它的窗口标题名,https://www.google.com是它的页面 url 地址. document.title 可以用来获取窗口标题名. loca ...

  5. js 监听URL地址变化

    js 监听URL的hash变化 项目中使用AntdUI组件+react  里面使用了menu组件管理目录结构,不同目录组件页面之中有点击按钮进行不同目录的跳转,因为是各种组件的关系,点击各组件后准确跳 ...

  6. javascript中new url()属性,轻松解析url地址

    1.首先写一个假的地址(q=URLUtils.searchParams&topic=api)相当于当前的window.location.href const urlParams = new U ...

  7. html js怎么访问url地址,HTML URL地址解析

    HTML URL地址解析 通过JavaScript的location对象,可获取URL中的协议.主机名.端口.锚点.查询参数等信息. 示例 URL:http://www.akmsg.com/WebDe ...

  8. URL地址 问号传参解析

    一.什么是URL参数? URL 参数是追加到 URL 上的一个名称/值对.参数以问号 (?) 开始并采用 name=value 的格式.如果存在多个 URL 参数,则参数之间用一个 (&) 符 ...

  9. python通过下载链接下载_Python根据URL地址下载文件——wget

    爬虫过程中经常会需要下载一些资源,通常我们会使用request进行下载,方法大致如下 import requests # 请求链接,有防爬的要加headers,代理ip地址 img = request ...

最新文章

  1. 删除index.php,从URL中删除index.php - Codeigniter 2
  2. helm部署Loki
  3. 20、21_链式法则、MLP(多层感知器模型)反向传播
  4. linux redis release.c:37:10: fatal error: release.h: No such file or directory
  5. 数据结构之并查集:UF-Tree优化并查集——19
  6. 职场上不会“装傻”,才是真的傻!
  7. linux 系统lv扩展_Filecoin 运维(1) 几个常用的系统配置
  8. 【CCCC】L2-006 树的遍历 (25分),根据后序与中序遍历建立二叉树(我讨厌树,系列1)
  9. localdatetime 格式化_LocalDateTime取代Data处理时间问题
  10. 安卓手机设置指定文件夹下的图片、视频不被相册读取到
  11. java.io.IOException: Failed to create local dir in /tmp/blockmgr-adb70127-0a28-4256-a205-c575acc74f9
  12. ROS之velodyne
  13. 汇编-栈帧-寄存器esp, ebp
  14. Windows超级管理器-便携版
  15. Java 杨辉三角
  16. 网络层次模型及各层对应协议
  17. 阿里云创建管理bucket(一)
  18. 牛刀小试基本语法,Go lang1.18入门精炼教程,由白丁入鸿儒,go lang基本语法和变量的使用EP02
  19. 校园论坛(Java)—— 数据报表模块
  20. 计算机信息安全必须学,计算机信息安全技术和防护措施介绍

热门文章

  1. 指尖触碰样书,梦想照进现实「博客出书的故事③」
  2. jsp定义一个变量在html,jsp中变量及方法的声明与使用说明
  3. 启示录 产品经理 pdf_3个月,从公司前台转行互联网产品经理
  4. ZXing.Net.Mobile无法识别较大的条码
  5. Swift3.0语言教程字符串与URL的数据转换与自由转换
  6. ps光效插件_全套光效PS插件(2019),只有你想不到的,没有它做不到的PS特效...
  7. 手写logback_springboot logback调整mybatis日志级别无效的解决
  8. java task多线程_JAVA语言-多线程实现的四种方式
  9. 基于Android移动终端的微型餐饮管理系统的设计与实现1-简介
  10. JAVA实现链表的反转(《剑指offer》)