JavaScript中JSON的解析与序列化
来源:互联网 发布:java物流项目简历 编辑:程序博客网 时间:2024/06/05 03:51
stringify()
把JavaScript对象序列化为JSON字符串
var book = { title: "Professional JavaScript", authors: [ "Nicholas C. Zakas" ], edition: 3, year: 2011}var jsonText = JSON.stringify(book);
stringify()中可传三个参数:需要序列化的JavaScript对象、过滤器(数组/函数)、指定字符串缩进方式。
过滤结果
若为数组:var book = { "title":"Professional JavaScript", "authors:" [ "Nicholas C. Zakas" ], edition: 3, year: 2011};var jsonText = JSON.stringify(book,["title", "edition"]);那么jsonText就为:{"title":"Professional JavaScript","edition":3}若为函数:var jsonText = JSON.stringify(book, function(key,value)){ switch(key){ case "authors": return value.join(",") case "year": return 5000; case "edition": return undefined; default: return value; }}
字符串缩进
要在每个级别缩进4个空格var jsonText = JSON.stringify(book,null,4);将缩进字符改为短划线之类的任意字符:var jsonText = JSON.stringify(book,null,"- -");
toJSON方法
直接在JavaScript对象中添加toJSON方法var book = { "title":"Professional JavaScript", "authors:" [ "Nicholas C. Zakas" ], edition: 3, year: 2011, toJSON:function(){ return this.title; }};var jsonText = JSON.stringify(book);
parse()
把JSON字符串解析 为原生JavaScript值。
var bookCopy = JSON.parse(jsonText);
JSON.parse()方法也可以接收另一个参数,该参数是一个函数,将在每个键值对儿上调用。
var book = { "title":"Professional JavaScript", "authors:" [ "Nicholas C. Zakas" ], edition: 3, year: 2011, releaseDate: new Date(2011, 11, 1) };var jsonText = JSON.stringify(book);var bookCopy = JSON.parse(jsonText, function(key,value)){ if (key == "releaseDate"){ return new Date(value); }else { return value; }}
0 0
- JavaScript中JSON的解析与序列化
- JSON的解析与序列化
- JSON数据格式的解析与序列化
- JavaScript JSON——“语法、解析与序列化”的注意要点
- javascript中JSON.parse()与eval()解析json的区别
- JSON解析与序列化
- JSON解析与序列化
- JSON解析与序列化
- JSON--解析与序列化
- 说说使用 JavaScript 解析以及序列化 JSON 的方法
- JavaScript解析和序列化JSON
- JavaScript中的json解析和序列化
- [乐意黎转载]json的解析与序列化
- 浅谈Json解析与序列化
- JavaScript转换与解析JSON的方法
- JavaScript转换与解析JSON的方法
- JavaScript转换与解析JSON的方法
- JavaScript转换与解析JSON的方法
- 层次遍历二插树
- 获取APP的版本号
- C语言的编码规范
- 最短路径问题
- Linux下线程互斥与同步
- JavaScript中JSON的解析与序列化
- SQL多表操作 内连接、外连接、交叉连接,(操作层面)学习笔记
- 商店选址问题
- 用css写个三角形
- 使用maven命令启动tomcat7
- 递归
- 设计模式:工厂模式
- 设计模式之建造者模式
- Json的使用