1.问题描述
url是web编写过程中一种不可或缺的需要打交道的值,不论是在页面跳转中,还是ajax请求数据或是其他框架插件的url提供.
对于很多程序猿来说,js中经常遇到需要变更url(主要是其中所包含的参数)的情况,大多数人使用的方法是直接拼接.
这种方法胜在简单,同样存在不少不足,如:
拼接形成的url安全性上总是存在潜在的危险;
从某个完整url中获取其中所包含的参数和纯地址,以进行下一步的比较,也是件较麻烦的事情;
2.解决思路
基于以上问题,我的解决策略是将url进行对象化的管理,将url纯地址,url参数分别放到一个对象的各个属性中.
每次对url的变更,可使用先分析为对象格式,再变更其中某些参数,再组建成为新的url方法.
这样构建再开始做的时候也许会觉得有些多此一举,但在处理一些比较复杂的情况时,会非常方便.
3.演示代码
首先提供分析和组建url的方法(可以考虑将之封装成一个方法,方法称的话可以起的再复杂些以避免重复):
/** * 数据处理-解析url为一个对象 */ function parseUrl(strUrl){ var arrUrlPart=strUrl.split('"htmlcode">var strUrl1='www.example.com/admin/product/main"htmlcode">shangpin1 www.example.com/admin/product/main"color: #ff0000">4.待改进的地方以上情况适用于非路径参数的情况下,当使用路径参数时,如:
www.example.com/admin/product/list/1这个1作为参数,在该方法就不适用了.
也可以优化方法,将方法转化为适用于路径参数的解析与重构,这又是后话了。
以上就是我们给大家详细介绍的关于JS中URL对象化管理的全部内容,感谢你对的支持。
最新资源
- 群星《说唱梦工厂 第11期》[320K/MP3][63.25MB]
- 群星《说唱梦工厂 第11期》[FLAC/分轨][343.07M
- 群星《闪光的夏天 第5期》[320K/MP3][79.35MB]
- 秀兰玛雅.1999-友情人【大旗】【WAV+CUE】
- 小米.2020-我想在城市里当一个乡下人【滚石】【
- 齐豫.2003-THE.UNHEARD.OF.CHYI.3CD【苏活音乐】
- 黄乙玲1986-讲什么山盟海誓[日本东芝版][WAV+CU
- 曾庆瑜1991-柔情陷阱[台湾派森东芝版][WAV+CUE]
- 陈建江《享受男声》DTS-ES6.1【WAV】
- 群星《闪光的夏天 第5期》[FLAC/分轨][392.38MB