谈谈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 相关文章推荐
jquery 表单下所有元素的隐藏
Jul 25 Javascript
Mootools 1.2教程 输入过滤第一部分(数字)
Sep 15 Javascript
js实现瀑布流的一种简单方法实例分享
Nov 04 Javascript
js 实现浏览历史记录示例
Apr 20 Javascript
简述JavaScript的正则表达式中test()方法的使用
Jun 16 Javascript
原生JS简单实现ajax的方法示例
Nov 29 Javascript
JavaScript中清空数组的三种方式
Mar 22 Javascript
jquery中有哪些api jQuery主要API
Nov 20 jQuery
利用js给datalist或select动态添加option选项的方法
Jan 25 Javascript
vue.js 实现图片本地预览 裁剪 压缩 上传功能
Mar 01 Javascript
使用Angular material主题定义自己的组件库的配色体系
Sep 04 Javascript
React生命周期原理与用法踩坑笔记
Apr 28 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
先进的自动咖啡技术,真的可以取代咖啡师吗?
2021/03/06 冲泡冲煮
php短域名转换为实际域名函数
2011/01/17 PHP
PHP回调函数与匿名函数实例详解
2017/08/16 PHP
php双层循环(九九乘法表)
2017/10/23 PHP
js当一个变量为函数时 应该注意的一点细节小结
2011/12/29 Javascript
document.createElement()用法及注意事项(ff下不兼容)
2013/03/13 Javascript
Jquery动态更改一张位图的src与Attr的使用
2013/07/31 Javascript
删除select中所有option选项jquery代码
2013/08/12 Javascript
SyntaxHighlighter 3.0.83使用笔记
2015/01/26 Javascript
深入学习JavaScript中的原型prototype
2015/08/13 Javascript
jquery在ie7下选择器的问题导致append失效的解决方法
2016/01/10 Javascript
jQuery代码性能优化的10种方法
2016/06/21 Javascript
详解nodeJS中读写文件方法的区别
2017/03/06 NodeJs
关于angular js_$watch监控属性和对象详解
2017/04/24 Javascript
jQuery实现的简单对话框拖动功能示例
2018/06/05 jQuery
Vue通过ref父子组件拿值方法
2018/09/12 Javascript
微信小程序实现分享朋友圈的图片功能示例
2019/01/18 Javascript
Vue.js项目实战之多语种网站的功能实现(租车)
2019/08/07 Javascript
微信小程序canvas分享海报功能
2019/10/31 Javascript
深入理解 TypeScript Reflect Metadata
2019/12/12 Javascript
ES6 Object.assign()的用法及其使用
2020/01/18 Javascript
Vue Render函数原理及代码实例解析
2020/07/30 Javascript
Vue+scss白天和夜间模式切换功能的实现方法
2021/01/05 Vue.js
python中管道用法入门实例
2015/06/04 Python
Python多线程和队列操作实例
2015/06/21 Python
Python实现单词翻译功能
2017/06/06 Python
在pycharm上mongodb配置及可视化设置方法
2018/11/30 Python
python执行CMD指令,并获取返回的方法
2018/12/19 Python
python之生产者消费者模型实现详解
2019/07/27 Python
探索HTML5本地存储功能运用技巧
2016/03/02 HTML / CSS
ALDI奥乐齐官方海外旗舰店:德国百年超市
2017/12/27 全球购物
英国女装网上商店:I Saw It First
2018/10/18 全球购物
个人素质的自我评价分享
2013/12/16 职场文书
幼儿园门卫制度
2014/01/29 职场文书
基于Golang 高并发问题的解决方案
2021/05/08 Golang
分享7个 Python 实战项目练习
2022/03/03 Python