url解析
window.onload=function(){
var url="http://www.qq.com/index.html?key1=1&key2=2&key3=3";
var json={};
json['query']=url.split('?')[1];
json['protocol']=url.split(':')[0];
json['hostname']=url.split('/')[2];//注意切出来时空的时候忽略不算,不会占数组的一位
json['pathname']="/"+url.split('/')[3].split('?')[0];
alert(JSON.stringify(json));
};
//json构造的方法
var url='URL:http://item.taobao.com/item.htm?a=1&b=2&c=&d=xxx&e';
var arr=url.split('?')[1].split('&');
var json={};
for(var i=0;i<arr.length;i++){
json[arr[i].split('=')[0]]=arr[i].split('=')[1]
}
return json;
//字符串拼接的方法
var url='URL:http://item.taobao.com/item.htm?a=1&b=2&c=&d=xxx&e';
var arr=url.split('?')[1].split('&');
var str='';
var json=null;
for(var i=0; i<arr.length; i++){
if(arr[i].indexOf('=')!=-1){
str+=arr[i].split('=')[0]+":"+"'"+arr[i].split('=')[1]+"'"+",";
}else{
str+=arr[i]+":undefined,";
}
}
json=eval('('+str.substring(0,str.length-1)+')');
return json;
var url = 'http://item.taobao.com/item.htm?a=1&b=2&c=&d=xxx&e';//注意ie不兼容forEach()方法
var gets = url.split('?')[1];
gets = gets.split('&')
var paramJson = {}
gets.forEach( function(item) {
var key_value=item.split('=');
paramJson[key_value[0]]=key_value[1];
})
//正则表达式+json构造法
var url='http://item.taobao.com/item.htm?a=1&b=2&b=3&c=&d=xxx&e',obj={};
url.replace(/[&?]([^=]+)=([^&#]*)/gi,function(a,b,c){
obj[b] ? (obj[b]+=","+c):(obj[b]=c);//如果不计较重复就用obj[b]=c
});
console.log(obj);
url解析的更多相关文章
- 简单的URL解析
简单的URL解析,直接举例说明了 function getUrl(){ //如果存在则取到来后面的参数,注意,?不需要取出,substring从1开始,否则取""; var qs ...
- ThinkPHP中URL解析原理,以及URL路由使用教程!
几个概念: THINKPHP 是一个MVC框架,使用PATHINFO解析出分组名,模块名,方法名,以及参数. PATHINFO:就是 http://localhost/index.php/Home/I ...
- Django的url解析
Django中采用正则表达式来匹配所请求的url,这个叫做URLconf,作为MVC中的C(控制器), 这样再调用相应的试图,达到控制器控制试图的显示的效果. 看一下Django的url解析过程 第一 ...
- 百度url解析Joe.Smith整理大全
百度url解析Joe.Smith整理大全 百度url解析Joe.Smith整理大全...1 本文链接:http://blog.csdn.net/qq_26816591/article/details/ ...
- jsp页面获取参数的方法(url解析、el表达式赋值、session取值)【原创】
最近使用myEclispse做网站,使用jsp+js+css做页面,网站中常用到从列表进入详情页面的跳转,下面对详情页面的值填充方式做一个简单总结: 1.url中使用request获取参数 jsp上方 ...
- 用正则把url解析为对象
用正则把url解析为对象 <!DOCTYPE html><html><head><meta charset="utf-8">< ...
- 「Python 编程」编码实现网络请求库中的 URL 解析器
摘要:怎么写出更短的代码并不是这次要讨论的话题.今天我们来研究一下:运行代码的计算机是如何找到目标服务器的? 相信各位 Python 开发者都用过 Requests 库,有些朋友还用过 WebSock ...
- nodejs URL解析
说到URL就需要提一下URI,一个网址就是一个URL,是一个具体的符号,说明了要通过什么协议来访问某种资源,URI是一个字符格式规范,URL是URI的一个子集,URL肯定是URI,但URI却不一定是U ...
- 三道JS试题(遍历、创建对象、URL解析)
最近在网上看到了三道不错的JS试题,还是很基础(一直认为学好前端基本功很重要...),现在记录如下: 原帖地址:http://www.w3cfuns.com/forum.php?mod=viewthr ...
- 在ASP.NET非MVC环境中(WebForm中)构造MVC的URL参数,以及如何根据URL解析出匹配到MVC路由的Controller和Action
目前项目中有个需求,需要在WebForm中去构造MVC的URL信息,这里写了一个帮助类可以在ASP.NET非MVC环境中(WebForm中)构造MVC的URL信息,主要就是借助当前Http上下文去构造 ...
随机推荐
- RhinoMocks简单范例
using System; namespace MockTest { public interface IBBB { int Number { get; } int Compute(int j); i ...
- 最短路径算法Dijkstra和A*
在设计基于地图的游戏,特别是isometric斜45度视角游戏时,几乎必须要用到最短路径算法.Dijkstra算法是寻找当前最优路径(距离原点最近),如果遇到更短的路径,则修改路径(边松弛). Ast ...
- algorithm: heap sort in python 算法导论 堆排序
An Python implementation of heap-sort based on the detailed algorithm description in Introduction to ...
- mybatis系列-02-mybatis框架
2.1 mybatis是什么 MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google co ...
- English Morphology
最近参与一个小project,需要编写一个针对英文单词的stem 算法. 1. 最为常见的stem 算法 就是The English (Porter2) stemming algorithm http ...
- 【bzoj1300】大数计算器
题意: 求C(n,m) 如果C(n,m)的位数<=12 那么直接输出 否则按XXX...XXXXXXXXX的形式输出 题解: 这题之前打过 但是昨天又想出一种新的做法 先说下新的做法吧- - _ ...
- quartus II 自动生成testbench
如果自己不想写这些testbench的这些固定格式,可以在quartus里自动生成testbench文件的模板,然后往里面写信号就行了 步骤:processing->start->star ...
- (贪心5.2.6)URAL 1014 Product of Digits(利用数据有序化进行贪心选择)
/* * URAL_1014.cpp * * Created on: 2013年10月11日 * Author: Administrator */ #include <iostream> ...
- 第3组UI组件:AdapterView及其子类
1 AdapterView类简介 1.1 AdapterView组件是一组重要的组件,AdapterView本身是一个抽线类,实际使用更多的都是Adapter相关子类,AdapterView具有如下特 ...
- MYSQL- 创建和删除临时表
临时表可能是非常有用的,在某些情况下,保持临时数据.最重要的是应该知道的临时表是,他们将当前的客户(www.111cn.net)端会话终止时被删除 当你创建临时表的时候,你可以使用temporary关 ...