谈谈JSON对象和字符串之间的相互转换JSON.stringify(obj)和JSON.parse(string)


Posted in Javascript onOctober 01, 2015

在Firefox,chrome,opera,safari,ie9,ie8等高级浏览器直接可以用JSON对象的stringify()和parse()方法。

JSON.stringify(obj)将JSON转为字符串。JSON.parse(string)将字符串转为JSON格式;

var a={"name":"tom","sex":"男","age":"24"};
var aToStr = JSON.stringify(a);
alert(aToStr); //结果:{"name":"tom","sex":"男","age":"24"}

  结果:string

var b='{"name":"tom","sex":"男","age":"24"}';
var aToObj = JSON.parse(b); 
console.log(aToObj); //结果:Object {name: "tom", sex: "男", age: "24"}

结果:object

ie8(兼容模式),ie7和ie6没有JSON对象,不过http://www.json.org/提供了一个json.js,这样ie8(兼容模式),ie7和ie6就可以支持JSON对象以及其stringify()和parse()方法;

现在一般用json2.js,下载地址:点击此处。

在页面中添加就能解决IE低版本没有json对象的问题。

<script type="text/javascript" src="js/json2.js"></script>

PS: JSON的parse()和stringfy()方法

1.JSON.parse;

作用:将JavaScript对象表示法的JSON字符串转换为对象(字符串转对象)

语法:JSON.parse(text [, reviver])

text 必选。 一个有效的 JSON 字符串。

reviver 可选。 一个转换结果的函数。 将为对象的每个成员调用此函数。

返回值:JSON对象

实例:

var jsonStr = '{"name":"leinov","sex":"famle","address":"beijing"}'
var jsonObj = JSON.parse(jsonStr);
alert(typeof jsonObj); //Object

2.JSON.stringify

作用:将 JavaScript json对象转换为JavaScript对象表示法的JSON字符串(对象转为字符串)

语法:JSON.stringify(value [, replacer] [, space]);

value 必选 通常为对象或数组

replacer 可选转换结果的函数或数组

space 可选。 添加缩进、空白和换行符来返回值 JSON 文本更便于阅读。

         如果省略 space,返回值文本生成,没有任何额外的空白。

         如果 space 是数字,则返回值具有空白的文本缩进指定数目在每个级别的。 如果 space 大于 10 时,文本缩进 10 个空白。

         如果 space 为非空字符串,如“\t”,返回值文本缩进与字符串的字符在每个级别。

         如果 space 为大于 10 个字符的字符串,使用前 10 个字符。

返回值:JSON 包含的文本字符串。

实例:

var student = new Object();
student.name = "leinov";
student.sex = "famle";
student.address = "chaoyang";
var jsonStudent = JSON.stringify(student);
alert(typeof jsonStudent); //string
Javascript 相关文章推荐
javascript Split方法,indexOf方法、lastIndexOf 方法和substring 方法
Mar 21 Javascript
ext combox 下拉框不出现自动提示,自动选中的解决方法
Feb 24 Javascript
基于OO的动画附加插件,可以实现弹跳、渐隐等动画效果 分享
Jun 24 Javascript
探讨JavaScript中声明全局变量三种方式的异同
Dec 03 Javascript
jquery退出each循环的写法
Feb 26 Javascript
jQuery实现下拉框选择图片功能实例
Aug 08 Javascript
今天抽时间给大家整理jquery和ajax的相关知识
Nov 17 Javascript
JavaScript中最容易混淆的作用域、提升、闭包知识详解(推荐)
Sep 05 Javascript
解决Vue打包之后文件路径出错的问题
Mar 06 Javascript
利用jqgrid实现上移下移单元格功能
Nov 07 Javascript
微信小程序防止多次点击跳转和防止表单组件输入内容多次验证功能(函数防抖)
Sep 19 Javascript
JavaScript工具库MyTools详解
Jan 01 Javascript
通过js获取上传的图片信息(临时保存路径,名称,大小)然后通过ajax传递给后端的方法
Oct 01 #Javascript
基于OL2实现百度地图ABCD marker的效果
Oct 01 #Javascript
JS处理json日期格式化问题
Oct 01 #Javascript
JS日期格式化之javascript Date format
Oct 01 #Javascript
详解JavaScript对Date对象的操作问题(生成一个倒数7天的数组)
Oct 01 #Javascript
RequireJS入门一之实现第一个例子
Sep 30 #Javascript
基于jQuery Bar Indicator 插件实现进度条展示效果
Sep 30 #Javascript
You might like
PHP和.net中des加解密的实现方法
2013/02/27 PHP
PHP中include与require使用方法区别详解
2013/10/19 PHP
php 浮点数比较方法详解
2017/05/05 PHP
asp函数split()对应php函数explode()
2019/02/27 PHP
Laravel框架文件上传功能实现方法示例
2019/04/16 PHP
php使用socket调用http和smtp协议实例小结
2019/07/26 PHP
屏蔽鼠标右键、Ctrl+n、shift+F10、F5刷新、退格键 的javascript代码
2007/04/01 Javascript
Jquery命名冲突解决的五种方案分享
2012/03/16 Javascript
JS基础随笔(菜鸟必看篇)
2016/07/13 Javascript
js获取地址栏参数的两种方法
2017/06/27 Javascript
JavaScript实现焦点进入文本框内关闭输入法的核心代码
2017/09/20 Javascript
AngularJS实现图片上传和预览功能的方法分析
2017/11/08 Javascript
使用Vue.set()方法实现响应式修改数组数据步骤
2019/11/09 Javascript
vue print.js打印支持Echarts图表操作
2020/11/13 Javascript
vue-drawer-layout实现手势滑出菜单栏
2020/11/19 Vue.js
[04:13]2014DOTA2国际邀请赛 专访DC目前形势不容乐观
2014/07/12 DOTA
[01:13:18]Secret vs Infamous 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.23
2019/09/05 DOTA
使用python将mdb数据库文件导入postgresql数据库示例
2014/02/17 Python
Python对小数进行除法运算的正确方法示例
2014/08/25 Python
Python使用Srapy框架爬虫模拟登陆并抓取知乎内容
2016/07/02 Python
从头学Python之编写可执行的.py文件
2017/11/28 Python
Python基于百度AI的文字识别的示例
2018/04/21 Python
python traceback捕获并打印异常的方法
2018/08/31 Python
使用Python制作自动推送微信消息提醒的备忘录功能
2018/09/06 Python
Python 实现日志同时输出到屏幕和文件
2020/02/19 Python
python计算导数并绘图的实例
2020/02/29 Python
解决Jupyter无法导入已安装的 module问题
2020/04/17 Python
使用HTML5和CSS3表单验证功能
2017/05/05 HTML / CSS
学术会议欢迎词
2014/01/09 职场文书
经销商会议欢迎词
2014/01/11 职场文书
好邻里事迹材料
2014/01/16 职场文书
党的群众路线教育实践活动方案
2014/10/31 职场文书
2014年中职班主任工作总结
2014/12/16 职场文书
JavaScript实现淘宝商品图切换效果
2021/04/29 Javascript
浅谈如何提高PHP代码的质量
2021/05/28 PHP
详细分析PHP7与PHP5区别
2021/06/26 PHP