转换字符串为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 相关文章推荐
通用于ie和firefox的函数 GetCurrentStyle (obj, prop)
Dec 27 Javascript
IE7中javascript操作CheckBox的checked=true不打勾的解决方法
Dec 07 Javascript
拖动table标题实现改变td的大小(css+js代码)
Apr 16 Javascript
快速解决FusionCharts联动的中文乱码问题
Dec 04 Javascript
我用的一些Node.js开发工具、开发包、框架等总结
Sep 25 Javascript
Node.js通过身份证号验证年龄、出生日期与性别方法示例
Mar 09 Javascript
使用vue-cli(vue脚手架)快速搭建项目的方法
May 21 Javascript
vue2.0父子组件间传递数据的方法
Aug 16 Javascript
vue生成文件本地打开查看效果的实例
Sep 06 Javascript
浅谈JavaScript中的“!!”作用
Aug 03 Javascript
vue 使用原生组件上传图片的实例
Sep 08 Javascript
Bootstrap FileInput实现图片上传功能
Jan 28 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基础知识:函数基础知识
2006/12/13 PHP
laravel ORM关联关系中的 with和whereHas用法
2019/10/16 PHP
用JavaScript隐藏控件的方法
2009/09/21 Javascript
js或css实现滚动广告的几种方案
2010/01/28 Javascript
浅谈JavaScript 浏览器对象
2016/06/03 Javascript
JavaScript中自带的 reduce()方法使用示例详解
2016/08/10 Javascript
ES6入门教程之Iterator与for...of循环详解
2017/05/17 Javascript
浅析JS抽象工厂模式
2017/12/14 Javascript
解决element-ui中下拉菜单子选项click事件不触发的问题
2018/08/22 Javascript
JavaScript 复制对象与Object.assign方法无法实现深复制
2018/11/02 Javascript
vue仿淘宝滑动验证码功能(样式模仿)
2019/12/10 Javascript
vue.js 输入框输入值自动过滤特殊字符替换中问标点操作
2020/08/31 Javascript
[20:57]Ti4主赛事第三天开幕式
2014/07/21 DOTA
Python3 能振兴 Python的原因分析
2014/11/28 Python
python添加模块搜索路径方法
2017/09/11 Python
python中pika模块问题的深入探究
2018/10/13 Python
解决python测试opencv时imread导致的错误问题
2019/01/26 Python
django实现后台显示媒体文件
2020/04/07 Python
从python读取sql的实例方法
2020/07/21 Python
哪种Python框架适合你?简单介绍几种主流Python框架
2020/08/04 Python
Oroton中国官网:澳洲知名奢侈配饰品牌
2017/03/26 全球购物
澳大利亚第一的设计师礼服租赁网站:GlamCorner
2017/08/13 全球购物
麦当劳印度网上订餐:McDelivery
2020/03/16 全球购物
俄罗斯三星品牌商店:Samsungstore
2020/04/05 全球购物
EJB的几种类型
2012/08/15 面试题
前台文员岗位职责
2013/12/28 职场文书
颂军魂爱军营演讲稿
2014/09/13 职场文书
初中语文教师研修日志
2015/11/13 职场文书
公文写作:工伤事故分析报告怎么写?
2019/11/05 职场文书
python字符串常规操作大全
2021/05/02 Python
python3.7.2 tkinter entry框限定输入数字的操作
2021/05/22 Python
html中显示特殊符号(附带特殊字符对应表)
2021/06/21 HTML / CSS
Python实现学生管理系统(面向对象版)
2021/06/24 Python
nginx中proxy_pass各种用法详解
2021/11/07 Servers
SQL CASE 表达式的具体使用
2022/03/21 SQL Server
MySQL优化之慢日志查询
2022/06/10 MySQL