浅谈js的url解析函数封装


Posted in Javascript onJune 28, 2016

在实际开发中,有些通过get方式与后台交换数据的时候,需要用到的数据在url中,因此就需要我们来获取到url中有用的信息,下面封装的函数已经可以将url解析的很彻底了,可以拿来直接用的:

function parseURL(url) {
   var a = document.createElement('a');
    a.href = url;
    return {
      source: url,
      protocol: a.protocol.replace(':',''),
      host: a.hostname,
      port: a.port,
      query: a.search,
      params: (function(){
        var ret = {},
          seg = a.search.replace(/^\?/,'').split('&'),
          len = seg.length, i = 0, s; //len = 2
          alert(a.search)
        for (;i<len;i++) {
          if (!seg[i]) { continue; }
          s = seg[i].split('=');
          ret[s[0]] = s[1];
        }
        return ret;
      })(),
      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('/')
    };
  }

该函数的用法如下:

var myURL = parseURL(window.location.href); //通过parseURL函数来解析当前页面的url;window.location.href可替换成任意要解析的url,如果直接写其他的url,格式应该字符串;
var search_obj = myURL.params;//该解析方式是将search的内容解析为对象,方便进行数据的调用;其他方法可以自行尝试;
var url_post = myURL.post;
//当前页面的端口号;

以上就是小编为大家带来的浅谈js的url解析函数封装全部内容了,希望大家多多支持三水点靠木~

Javascript 相关文章推荐
JavaScript 学习点滴记录
Apr 24 Javascript
location.search在客户端获取Url参数的方法
Jun 08 Javascript
JS原型对象通俗&quot;唱法&quot;
Dec 27 Javascript
Chrome下ifame父窗口调用子窗口的问题示例探讨
Mar 17 Javascript
js实现点击左右按钮轮播图片效果实例
Jan 29 Javascript
javascript中call apply 的应用场景
Apr 16 Javascript
简述Matlab中size()函数的用法
Mar 20 Javascript
响应式表格之固定表头的简单实现
Aug 26 Javascript
概述如何实现一个简单的浏览器端js模块加载器
Dec 07 Javascript
javascript实现文字无缝滚动
Dec 27 Javascript
详解VUE Element-UI多级菜单动态渲染的组件
Apr 25 Javascript
使用RxJS更优雅地进行定时请求详析
Jun 02 Javascript
JavaScript中点击事件的写法
Jun 28 #Javascript
js改变style样式和css样式的简单实例
Jun 28 #Javascript
js改变css样式的三种方法推荐
Jun 28 #Javascript
Javascript中获取浏览器类型和操作系统版本等客户端信息常用代码
Jun 28 #Javascript
获取input标签的所有属性的方法
Jun 28 #Javascript
JavaScript ES6的新特性使用新方法定义Class
Jun 28 #Javascript
javascript 常用验证函数总结
Jun 28 #Javascript
You might like
全国FM电台频率大全 - 25 云南省
2020/03/11 无线电
防止用户利用PHP代码DOS造成用光网络带宽
2011/03/01 PHP
php使用date和strtotime函数输出指定日期的方法
2014/11/14 PHP
typecho插件编写教程(六):调用接口
2015/05/28 PHP
解决yii2左侧菜单子级无法高亮问题的方法
2016/05/08 PHP
PHP和MYSQL实现分页导航思路详解
2017/04/11 PHP
使用laravel和ajax实现整个页面无刷新的操作方法
2019/10/03 PHP
彪哥1.1(智能表格)提供下载
2006/09/07 Javascript
js实现的真正的iframe高度自适应(兼容IE,FF,Opera)
2010/03/07 Javascript
用js实现输入提示(自动完成)的实例代码
2013/06/14 Javascript
jQuery列表拖动排列具体实现
2013/11/04 Javascript
javascript显式类型转换实例分析
2015/04/25 Javascript
JS不用正则验证输入的字符串是否为空(包含空格)的实现代码
2016/06/14 Javascript
基于JS实现横线提示输入验证码随验证码输入消失(js验证码的实现)
2016/10/27 Javascript
bootstrap学习使用(导航条、下拉菜单、轮播、栅格布局等)
2016/12/01 Javascript
JS原型与原型链的深入理解
2017/02/15 Javascript
jQuery ajax动态生成table功能示例
2017/06/14 jQuery
JS如何设置元素样式的方法示例
2017/08/28 Javascript
angular6.0开发教程之如何安装angular6.0框架
2018/06/29 Javascript
Mint-UI时间组件起始时间问题及时间插件使用
2018/08/20 Javascript
vue引入微信sdk 实现分享朋友圈获取地理位置功能
2019/07/04 Javascript
Vue项目打包部署到iis服务器的配置方法
2019/10/14 Javascript
vue设置一开始进入的页面教程
2019/10/28 Javascript
jQuery插件simplePagination的使用方法示例
2020/04/28 jQuery
Vue 监听元素前后变化值实例
2020/07/29 Javascript
JavaScript实现alert弹框效果
2020/11/19 Javascript
Python编程中NotImplementedError的使用方法
2018/04/21 Python
Pandas之Fillna填充缺失数据的方法
2019/06/25 Python
加拿大花店:1800Flowers.ca
2016/11/16 全球购物
满月酒答谢词
2014/01/14 职场文书
中年人生感言
2014/02/04 职场文书
教师评语大全
2014/04/28 职场文书
银行求职自荐信
2014/06/30 职场文书
绍兴鲁迅故居导游词
2015/02/09 职场文书
家长必看:义务教育,不得以面试 评测等名义选拔学生
2019/07/09 职场文书
Python基础之Socket通信原理
2021/04/22 Python