JavaScript实现url参数转成json形式


Posted in Javascript onSeptember 25, 2016

朋友问的一个面试题:有个url,要求获取url 的参数,返回值为json格式。

简单的写了下,发笔记备份。

<!DOCTYPE html>
<html>
<head>
 <meta charset="utf-8">
 <title>simple a example for url to json</title>
 <script>
 var url = 'https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=0&rsv_idx=1&tn=baidu&wd=慕课&rsv_pq=e379bd8200001a8c&rsv_t=ea8cxrgm03IFb44zHA261P6KziPRXAekcjwsRJtUSKLUmKweFsZFXE%2BUSrU&rqlang=cn&rsv_enter=0&rs';

 function url2json(url){
  var index = -1,
     str = '',
     arr = [],
     length = 0,
     res = {};
  if(url.indexOf('?')!=-1){
  index = url.indexOf('?');
  str = url.substring(index+1);
  arr = str.split('&');
  length = arr.length;
  for(var i=0; i<length-1; i++){
   res[arr[i].split('=')[0]] = arr[i].split('=')[1];
  }
  }else{
  res = {};
  }
  return res;
 };

 var result = url2json(url);

 //获取json的键值对条数(模拟长度)
 var length = 0;
 for(var i in result){
  length++;
 }


 //在页面输出
 var tL = 0;
 document.write('{<br>');
 for(var name in result){
  tL++;
  
  if(tL == length){
  document.write('  '+name+':'+result[name]+'<br>');
  }else{
  document.write('  '+name+':'+result[name]+',<br>'); 
  }
 }
 document.write('}');
 </script>
</head>
<body>
Javascript 相关文章推荐
DOMAssitant最新版 DOMAssistant 2.5发布
Dec 25 Javascript
jQuery 动画弹出窗体支持多种展现方式
Apr 29 Javascript
用JavaScript实现动画效果的方法
Jul 20 Javascript
可选择和输入的下拉列表框示例
Nov 05 Javascript
Node.js模块加载详解
Aug 16 Javascript
分享9点个人认为比较重要的javascript 编程技巧
Apr 27 Javascript
jQuery+ajax实现滚动到页面底部自动加载图文列表效果(类似图片懒加载)
Jun 07 Javascript
详解vue.js组件化开发实践
Dec 14 Javascript
JS图片压缩(pc端和移动端都适用)
Jan 12 Javascript
JS实现的五级联动菜单效果完整实例
Feb 23 Javascript
AngularJS实现表单验证功能详解
Oct 12 Javascript
vue-resource拦截器设置头信息的实例
Oct 27 Javascript
动态JavaScript所造成一些你不知道的危害
Sep 25 #Javascript
jQuery中的AjaxSubmit使用讲解
Sep 25 #Javascript
需要牢记的JavaScript基础知识
Sep 25 #Javascript
分享一个原生的JavaScript拖动方法
Sep 25 #Javascript
HTML中setCapture、releaseCapture 使用方法浅析
Sep 25 #Javascript
jQuery的deferred对象使用详解
Sep 25 #Javascript
简单谈谈Vue 模板各类数据绑定
Sep 25 #Javascript
You might like
php中删除字符串中最先出现某个字符的实现代码
2013/02/03 PHP
PHP中echo,print_r与var_dump区别分析
2014/09/29 PHP
PHP中使用Imagick读取pdf并生成png缩略图实例
2015/01/21 PHP
详解PHP的Yii框架中的Controller控制器
2016/03/29 PHP
PHP中abstract(抽象)、final(最终)和static(静态)原理与用法详解
2020/06/05 PHP
JQuery操作表格(隔行着色,高亮显示,筛选数据)
2012/02/23 Javascript
限制textbox或textarea输入字符长度的JS代码
2013/10/16 Javascript
jquery实现图片上传之前预览的方法
2015/07/11 Javascript
Javascript必知必会(四)js类型转换
2016/06/08 Javascript
炫酷的js手风琴效果
2016/10/13 Javascript
实例讲解DataTables固定表格宽度(设置横向滚动条)
2017/07/11 Javascript
JS获取子、父、兄节点方法小结
2017/08/14 Javascript
jQuery实现table中两列CheckBox只能选中一个的示例
2017/09/22 jQuery
Vue 项目中遇到的跨域问题及解决方法(后台php)
2018/03/28 Javascript
angularjs http与后台交互的实现示例
2018/12/21 Javascript
小程序实现悬浮搜索框
2019/07/12 Javascript
Vue-CLI项目中路由传参的方式详解
2019/09/01 Javascript
django简单的前后端分离的数据传输实例 axios
2020/05/18 Javascript
[01:20]PWL S2开团时刻第三期——团战可以输 蝙蝠必须死
2020/11/26 DOTA
使用Python发送邮件附件以定时备份MySQL的教程
2015/04/25 Python
python使用urllib2提交http post请求的方法
2015/05/26 Python
微信跳一跳python代码实现
2018/01/05 Python
python求解数组中两个字符串的最小距离
2018/09/27 Python
python同时遍历数组的索引和值的实例
2018/11/15 Python
施华洛世奇天猫官方旗舰店:SWAROVSKI
2017/04/17 全球购物
机械专业个人求职自荐信格式
2013/09/21 职场文书
关于运动会的稿件
2014/02/02 职场文书
环境科学专业求职信
2014/08/04 职场文书
大学生就业协议书范本(适用于公司企业)
2014/10/07 职场文书
学校领导四风问题整改措施思想汇报
2014/10/09 职场文书
学校法制宣传日活动总结
2014/11/01 职场文书
总经理岗位职责范本
2015/04/01 职场文书
本科毕业论文致谢词
2015/05/14 职场文书
小学生班干部竞选稿
2015/11/20 职场文书
六五普法心得体会2016
2016/01/21 职场文书
《梅花魂》教学反思
2016/02/18 职场文书