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 相关文章推荐
JQuery中阻止事件冒泡几种方式及其区别介绍
Jan 15 Javascript
IE6/IE7中JavaScript json提示缺少标识符、字符串或数字问题处理
Dec 16 Javascript
原生Ajax 和jQuery Ajax的区别示例分析
Dec 17 Javascript
KnockoutJS 3.X API 第四章之表单textInput、hasFocus、checked绑定
Oct 11 Javascript
js中动态创建json,动态为json添加属性、属性值的实例
Dec 02 Javascript
详解JS数组Reduce()方法详解及高级技巧
Aug 18 Javascript
JavaScript实现简单图片轮播效果
Aug 21 Javascript
基于JavaScript实现报警器提示音效果
Oct 27 Javascript
nginx+vue.js实现前后端分离的示例代码
Feb 12 Javascript
Vue项目路由刷新的实现代码
Apr 17 Javascript
使用webpack搭建vue项目及注意事项
Jun 10 Javascript
JQuery事件委托(适用于给动态生成的脚本元素添加事件)
Feb 01 jQuery
动态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 生成的XML以FLASH获取为乱码终极解决
2009/08/07 PHP
php事件驱动化设计详解
2016/11/10 PHP
Laravel中的Blade模板引擎示例详解
2017/10/10 PHP
如何在PHP中读写文件
2020/09/07 PHP
File, FileReader 和 Ajax 文件上传实例分析(php)
2011/04/27 Javascript
如何实现修改密码时密码框显示保存到cookie的密码
2013/12/10 Javascript
鼠标经过tr时,改变tr当前背景颜色
2014/01/13 Javascript
解决json日期格式问题的3种方法
2014/02/02 Javascript
轻松创建nodejs服务器(4):路由
2014/12/18 NodeJs
jQuery+css3实现Ajax点击后动态删除功能的方法
2015/08/10 Javascript
Js制作点击输入框时默认文字消失的效果
2015/09/05 Javascript
JS+CSS简单树形菜单实现方法
2015/09/12 Javascript
Bootstrap图片轮播组件Carousel使用方法详解
2016/10/20 Javascript
JavaScript截屏功能的实现代码
2017/07/28 Javascript
vue.js整合mint-ui里的轮播图实例代码
2017/12/27 Javascript
VueAwesomeSwiper在VUE中的使用以及遇到的一些问题
2018/01/11 Javascript
原生JS forEach()和map()遍历的区别、兼容写法及jQuery $.each、$.map遍历操作
2019/02/27 jQuery
Vue组件之高德地图地址选择功能的实例代码
2019/06/21 Javascript
vue 解决setTimeOut和setInterval函数无效报错的问题
2020/07/30 Javascript
[08:06]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Elephant 选手采访
2021/03/11 DOTA
python将视频转换为全字符视频
2019/04/26 Python
python与字符编码问题
2019/05/24 Python
linux下python中文乱码解决方案详解
2019/08/28 Python
win10下安装Anaconda的教程(python环境+jupyter_notebook)
2019/10/23 Python
Django 简单实现分页与搜索功能的示例代码
2019/11/07 Python
浅谈Pytorch中的自动求导函数backward()所需参数的含义
2020/02/29 Python
学习雷锋寄语大全
2014/04/11 职场文书
党的群众路线教育实践活动总结材料
2014/10/30 职场文书
群众路线自查报告及整改措施
2014/11/04 职场文书
党的群众路线教育实践活动个人对照检查材料(企业)
2014/11/05 职场文书
上下班时间调整通知
2015/04/23 职场文书
现实表现证明材料
2015/06/19 职场文书
催款函范本大全
2015/06/24 职场文书
社团招新宣传语
2015/07/13 职场文书
利用python Pandas实现批量拆分Excel与合并Excel
2021/05/23 Python
Win10多屏显示如何设置?Win10电脑多屏显示设置操作方法
2022/07/07 数码科技