转换字符串为json对象的方法详解


Posted in Javascript onNovember 29, 2013

JSON是一种便于操作使用的轻量级数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。具体介绍请查看:http://www.json.org/。

很多时候我们需要组装字符串为json对象,首先要组合字符串,然后转换为json对象,如下面的例子:

<script type="text/javascript">
  <!--
  var a=50,b="xxx";
  var arr="{id:"+a+",name:'"+b+"'}";
  //-->
</script>

组合成了字符串arr,下一步就是转换成对象了,很快我们会想到使用eval方法,但如果这样做转换会出现错误,今日偶就这样尝试了,那该如何转换成json对象呢?郁闷许久,之后在json官网提供的json.js文件中找到了解决办法,方法如下:

在字符串两端再加上括号然后eval就ok了。测试代码如下:

<script type="text/javascript">
  <!--
  var a=50,b="xxx";
  var arr="{id:"+a+",name:'"+b+"'}";
  arr=eval('('+arr+')')
  alert(arr.name);
  //-->
</script>

上面代码执行后会弹出“xxx”,说明已经成功转换为json对象了,一个似乎很简单的问题,不过还是郁闷了半天才解决掉,还是记到blog上以加深印象,也希望能帮助遇到此问题的朋友早日解除郁闷。
Javascript 相关文章推荐
PNG背景在不同浏览器下的应用
Jun 22 Javascript
javascript void(0)的妙用
Oct 21 Javascript
JS限制Textarea文本域字符个数的具体实现
Aug 02 Javascript
js 绑定键盘鼠标事件示例代码
Feb 12 Javascript
js数组与字符串的相互转换方法
Jul 09 Javascript
jQuery实现自定义下拉列表
Jan 05 Javascript
javascript多物体运动实现方法分析
Jan 08 Javascript
jQuery unbind 删除绑定事件详解
May 24 Javascript
jQuery实现简洁的轮播图效果实例
Sep 07 Javascript
JS中Swiper的使用和轮播图效果
Aug 11 Javascript
浅谈node模块与npm包管理工具
Jan 03 Javascript
swiperjs实现导航与tab页的联动
Dec 13 Javascript
javascript对下拉列表框(select)的操作实例讲解
Nov 29 #Javascript
js 定时器setTimeout无法调用局部变量的解决办法
Nov 28 #Javascript
jquery使用淘宝接口跨域查询手机号码归属地实例
Nov 28 #Javascript
JS小功能(checkbox实现全选和全取消)实例代码
Nov 28 #Javascript
JS小功能(onmouseover实现选择月份)实例代码
Nov 28 #Javascript
JS小功能(setInterval实现图片效果显示时间)实例代码
Nov 28 #Javascript
JS小功能(操作Table--动态添加删除表格及数据)实现代码
Nov 28 #Javascript
You might like
基于Linux调试工具strace与gdb的常用命令总结
2013/06/03 PHP
php $_SERVER windows系统与linux系统下的区别说明
2014/02/14 PHP
php获取网卡的MAC地址支持WIN/LINUX系统
2014/04/30 PHP
完美利用Yii2微信后台开发的系列总结
2016/07/18 PHP
基于jQuery的遍历同id元素 并响应事件的代码
2012/06/14 Javascript
JS.getTextContent(element,preformatted)使用介绍
2013/09/21 Javascript
Jquery通过JSON字符串创建JSON对象
2014/08/24 Javascript
探讨js字符串数组拼接的性能问题
2014/10/11 Javascript
javascript中return,return true,return false三者的用法及区别
2015/11/17 Javascript
Javascript页面跳转常见实现方式汇总
2015/11/28 Javascript
Javascript创建类和对象详解
2017/05/31 Javascript
Node.js使用gm拼装sprite图片
2017/07/04 Javascript
基于 Bootstrap Datetimepicker 联动
2017/08/03 Javascript
vue-cli下的vuex的简单Demo图解(实现加1减1操作)
2018/02/26 Javascript
vue :src 文件路径错误问题的解决方法
2018/05/15 Javascript
JS数组求和的常用方法总结【5种方法】
2019/01/14 Javascript
学习LayUI时自研的表单参数校验框架案例分析
2019/07/29 Javascript
layui select 禁止点击的实现方法
2019/09/05 Javascript
vue父子模板传值问题解决方法案例分析
2020/02/26 Javascript
微信小程序实现手指拖动选项排序
2020/04/22 Javascript
如何解决jQuery 和其他JS库的冲突
2020/06/22 jQuery
python基础教程之序列详解
2014/08/29 Python
Python查找函数f(x)=0根的解决方法
2015/05/07 Python
python函数的5种参数详解
2017/02/24 Python
Python Tkinter 简单登录界面的实现
2019/06/14 Python
解决Python对齐文本字符串问题
2019/08/28 Python
python如何提取英语pdf内容并翻译
2020/03/03 Python
python3爬虫中多线程的优势总结
2020/11/24 Python
CSS3实现淘宝留白的方法
2020/06/05 HTML / CSS
美国传奇滑手Paul Rodriguez创办的街头滑板品牌:Primitive Skateboarding
2019/10/29 全球购物
中秋手机店促销方案
2014/06/16 职场文书
2014年设计师工作总结
2014/11/25 职场文书
巾帼文明岗汇报材料
2014/12/24 职场文书
信贷客户经理岗位职责
2015/04/09 职场文书
乡镇团委工作总结2015
2015/05/26 职场文书
清明扫墓感想
2015/08/11 职场文书