谈谈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 相关文章推荐
js 提交和设置表单的值
Dec 19 Javascript
jQuery ajax(复习)—Baidu ajax request分离版
Jan 24 Javascript
给超链接添加特效鼠标移动展示提示信息且随鼠标移动
Oct 17 Javascript
Javascript排序算法之计数排序的实例
Apr 05 Javascript
浅谈jQuery中 wrap() wrapAll() 与 wrapInner()的差异
Nov 12 Javascript
JS实现常见的TAB、弹出层效果(TAB标签,斑马线,遮罩层等)
Oct 08 Javascript
jQuery判断浏览器并动态调整select宽度的方法
Mar 02 Javascript
jQuery插件扩展测试实例
Jun 21 Javascript
WEB 前端开发中防治重复提交的实现方法
Oct 26 Javascript
详解js数组的完全随机排列算法
Dec 16 Javascript
Javascript实现鼠标点击冒泡特效
Dec 24 Javascript
vue点击按钮实现简单页面的切换
Sep 08 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
博士208HAF收音机实习报告
2021/03/02 无线电
PHP原生模板引擎 最简单的模板引擎
2012/04/25 PHP
phpmyadmin中禁止外网使用的方法
2014/11/04 PHP
PHP常见字符串处理函数用法示例【转换,转义,截取,比较,查找,反转,切割】
2016/12/24 PHP
PDO实现学生管理系统
2020/03/21 PHP
用js实现键盘方向键翻页功能的代码
2007/06/03 Javascript
javascript 最常用的10个自定义函数[推荐]
2009/12/26 Javascript
IE6下focus与blur错乱的解决方案
2011/07/31 Javascript
5个javascript的数字格式化函数分享
2011/12/07 Javascript
JQuery设置时间段下拉选择实例
2014/12/30 Javascript
jquery实现鼠标滑过显示提示框的方法
2015/02/05 Javascript
javascript实现table选中的行以指定颜色高亮显示的方法
2015/05/13 Javascript
学习JavaScript设计模式(代理模式)
2015/12/03 Javascript
jQuery实现的鼠标滑过弹出放大图片特效
2016/01/08 Javascript
AngularJS中的Directive实现延迟加载
2016/01/25 Javascript
JS实现PC手机端和嵌入式滑动拼图验证码三种效果
2017/02/15 Javascript
基于Vue2实现的仿手机QQ单页面应用功能(接入聊天机器人 )
2017/03/30 Javascript
微信小程序表单验证错误提示效果
2017/05/19 Javascript
详解vue2 $watch要注意的问题
2017/09/08 Javascript
jQuery实现可兼容IE6的遮罩功能详解
2017/09/19 jQuery
VUE2.0中Jsonp的使用方法
2018/05/22 Javascript
layui异步加载table表中某一列数据的例子
2019/09/16 Javascript
js实现树形数据转成扁平数据的方法示例
2020/02/27 Javascript
python 获取文件列表(或是目录例表)
2009/03/25 Python
详解Django中的form库的使用
2015/07/18 Python
Python开发的实用计算器完整实例
2017/05/10 Python
详解Anconda环境下载python包的教程(图形界面+命令行+pycharm安装)
2019/11/11 Python
使用python实现希尔、计数、基数基础排序的代码
2019/12/25 Python
canvas学习和滤镜实现代码
2018/08/22 HTML / CSS
印尼披萨外送专家:Domino’s Pizza印尼
2017/12/28 全球购物
全球地下的服装和态度:Slam Jam
2018/02/04 全球购物
俄罗斯护发和专业化妆品购物网站:Hihair
2019/09/28 全球购物
2014年创先争优活动总结
2014/05/04 职场文书
办公室文员岗位职责
2015/02/04 职场文书
办公室管理规章制度
2015/08/04 职场文书
关于Numpy之repeat、tile的用法总结
2021/06/02 Python