转换字符串为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 相关文章推荐
使用EXT实现无刷新动态调用股票信息
Nov 01 Javascript
js 编写规范
Mar 03 Javascript
jquery ui resizable bug解决方法
Oct 26 Javascript
JavaScript创建类/对象的几种方式概述及实例
May 06 Javascript
让JavaScript和其它资源并发下载的方法
Oct 16 Javascript
Javascript获取图片原始宽度和高度的方法详解
Sep 20 Javascript
JavaScript实现的商品抢购倒计时功能示例
Apr 17 Javascript
JS基于递归实现网页版计算器的方法分析
Dec 20 Javascript
JS中判断字符串存在和非空的方法
Sep 12 Javascript
webpack自动打包和热更新的实现方法
Jun 24 Javascript
JavaScript Event Loop相关原理解析
Jun 10 Javascript
vue中data里面的数据相互使用方式
Jun 05 Vue.js
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
php中curl和file_get_content的区别
2014/05/10 PHP
destoon官方标签大全
2014/06/20 PHP
Yii中render和renderPartial的区别
2014/09/03 PHP
制作个性化的WordPress登陆界面的实例教程
2016/05/21 PHP
创建无限极分类树型结构的简单方法
2017/06/20 PHP
yii2.0框架场景的简单使用示例
2020/01/25 PHP
使用JS进行目录上传(相当于批量上传)
2010/12/05 Javascript
小试JQuery的AutoComplete插件
2011/05/04 Javascript
js简单实现点击左右运动的方法
2015/04/10 Javascript
javascript显式类型转换实例分析
2015/04/25 Javascript
jQuery实现可展开合拢的手风琴面板菜单
2015/09/15 Javascript
原生JS取代一些JQuery方法的简单实现
2016/09/20 Javascript
jQuery grep()方法详解及实例代码
2016/10/30 Javascript
基于vue的fullpage.js单页滚动插件
2017/03/20 Javascript
vue异步加载高德地图的实现
2018/06/19 Javascript
Array数组对象中的forEach、map、filter及reduce详析
2018/08/02 Javascript
小程序获取周围IBeacon设备的方法
2018/10/31 Javascript
javascript json对象小技巧之键名作为变量用法分析
2019/11/11 Javascript
深入webpack打包原理及loader和plugin的实现
2020/05/06 Javascript
ES6 async、await的基本使用方法示例
2020/06/06 Javascript
Python类的用法实例浅析
2015/05/27 Python
python+Django+pycharm+mysql 搭建首个web项目详解
2019/11/29 Python
Python安装与卸载流程详细步骤(图解)
2020/02/20 Python
Django {{ MEDIA_URL }}无法显示图片的解决方式
2020/04/07 Python
python print 格式化输出,动态指定长度的实现
2020/04/12 Python
详解window.open被浏览器拦截的解决方案
2019/07/18 HTML / CSS
联想法国官方网站:Lenovo法国
2018/10/18 全球购物
Bibloo匈牙利:女装、男装、童装及鞋子和配饰
2019/04/14 全球购物
Linux Interview Questions For software testers
2013/05/17 面试题
建龙钢铁面试总结
2014/04/15 面试题
竞选体育委员演讲稿
2014/04/26 职场文书
美德少年事迹材料500字
2014/08/19 职场文书
影视后期实训报告
2014/11/05 职场文书
教师师德工作总结2015
2015/07/22 职场文书
如何用Python搭建gRPC服务
2021/06/30 Python
漫画「狩龙人拉格纳」公开TV动画预告图
2022/03/22 日漫