转换字符串为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 相关文章推荐
ExtJs3.0中Store添加 baseParams 的Bug
Mar 10 Javascript
JavaScript中的标签语句用法分析
Feb 10 Javascript
深入浅析Node.js 事件循环
Dec 20 Javascript
JavaScript操作选择对象的简单实例
May 16 Javascript
玩转NODE.JS(四)-搭建简单的聊天室的代码
Nov 11 Javascript
Bootstrap3 多选和单选框(checkbox)
Dec 29 Javascript
基于JavaScript实现拖动滑块效果
Feb 16 Javascript
JavaScript中in和hasOwnProperty区别详解
Aug 04 Javascript
Django使用多数据库的方法
Sep 06 Javascript
利用jsonp与代理服务器方案解决跨域问题
Sep 14 Javascript
详解基于Vue+Koa的pm2配置
Oct 24 Javascript
在React项目中使用Eslint代码检查工具及常见问题
Oct 10 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
PHP实现多进程并行操作的详解(可做守护进程)
2013/06/18 PHP
PHP随机生成随机个数的字母组合示例
2014/01/14 PHP
php实现Mongodb自定义方式生成自增ID的方法
2015/03/23 PHP
PHP中Session和Cookie是如何操作的
2015/10/10 PHP
input 输入框获得/失去焦点时隐藏/显示文字(jquery版)
2013/04/02 Javascript
js保留两位小数使用toFixed实现
2013/07/29 Javascript
解决jquery中美元符号命名冲突问题
2014/01/08 Javascript
jQuery选择器源码解读(三):tokenize方法
2015/03/31 Javascript
JavaScript File分段上传
2016/03/10 Javascript
jQuery的deferred对象使用详解
2016/09/25 Javascript
JavaScript模板引擎Template.js使用详解
2016/12/15 Javascript
nodejs接入阿里大鱼短信验证码的方法
2017/07/10 NodeJs
javascript编程开发中取色器及封装$函数用法示例
2017/08/09 Javascript
基于three.js编写的一个项目类示例代码
2018/01/05 Javascript
vue2.0路由切换后页面滚动位置不变BUG的解决方法
2018/03/14 Javascript
node puppeteer(headless chrome)实现网站登录
2018/05/09 Javascript
[01:43]深扒TI7聊天轮盘语音出处4
2017/05/11 DOTA
Python使用random和tertools模块解一些经典概率问题
2015/01/28 Python
PYTHON 中使用 GLOBAL引发的一系列问题
2016/10/12 Python
python 编写简单网页服务器的实例
2018/06/01 Python
python的pstuil模块使用方法总结
2019/07/26 Python
Python 使用元类type创建类对象常见应用详解
2019/10/17 Python
Python多进程编程multiprocessing代码实例
2020/03/12 Python
tensorflow实现从.ckpt文件中读取任意变量
2020/05/26 Python
详解Sticky Footer 绝对底部的两种套路
2017/11/03 HTML / CSS
html5实现移动端适配完美写法
2017/11/16 HTML / CSS
HTML5中的Web Notification桌面右下角通知功能的实现
2018/04/19 HTML / CSS
HTML5实现视频弹幕功能
2019/08/09 HTML / CSS
英国第一独立滑雪板商店:The Snowboard Asylum
2020/01/16 全球购物
在网络中有两台主机A和B,并通过路由器和其他交换设备连接起来,已经确认物理连接正确无误,怎么来测试这两台机器是否连通?如果不通,怎么来判断故障点?怎么排
2014/01/13 面试题
求职简历的自我评价
2014/01/31 职场文书
工程质量承诺书范文
2014/03/27 职场文书
《郑和远航》教学反思
2014/04/16 职场文书
python 统计代码耗时的几种方法分享
2021/04/02 Python
为什么MySQL不建议使用SELECT *
2022/04/03 MySQL
数据分析数据库ClickHouse在大数据领域应用实践
2022/04/03 MySQL