javascript权威指南第20章 JSON
//20.1 语法
//JAVASCRIPT 是对JSON数据支持的。
//JSON 可以申明三种类型的值 简单值("hello world") 对象({"name":"maosi"}) 数组(["a","b","c"]) //20.1.2 json对象 var person = { "name": "Nicholas", "age": 29 };
person = {
"name": "Nicholas",
"age": 29,
"school": {
"name": "Merrimack College",
"location": "North Andover,MA"
}
}
//js 对象
var person = { name: "Nicholas", age: 29 }; //20.1.3 数组(js语法与json 数组一样)
var values = [25, 'hi', true];
//复杂结构数组
[
{
"title": "Professnional javascript",
"authors": [
"Nicholas C Zakas"
],
edition: 3,
year: 2011
},
{
"title": "Professnional javascript",
"authors": [
"Nicholas C Zakas"
],
edition: 2,
year: 2009
}
] //20.2 解析与序列化 //序列化
var book = {
title: "professional JavaScript",
authors: ["Nicholas C Zakas"],
edition: 3,
year: 2011,
releaseDate:new Date(2011,1,1);
};
var jsontext = JSON.stringify(book); //20.2.2 序列化选项 jsontext = JSON.stringify(book, ["title", "edition"]); //表示序列化的属性数组(指定只序列化哪些属性)
//序列化属性进行逻辑处理
jsontext = JSON.stringify(book, function (key, value){
switch (key) {
case "authors":
return value.JSON(',');
case "year":
return 5000;
case "edition":
return undefined; //此处被定义为undefined后字符串后序列化时会忽略该字段,ignore
default:
return value;
} }); //JSON字符串缩进,上述方法会把JSON序列化成一行长长的字符串
jsontext = JSON.stringify(book,null,4); //第三个参数表示每个级别缩进的空格数 JSON.parse(jsontext,function(key,value){
if(key =='releaseDate'){
return new Date(value); //特定对象要进行字符串还原操作
}
else{
return value;
}
}); //20.3 小结
javascript权威指南第20章 JSON的更多相关文章
- 【笔记】javascript权威指南-第六章-对象
对象 //本书是指:javascript权威指南 //以下内容摘记时间为:2013.7.28 对象的定义: 1.对象是一种复合值:将很多值(原始值或者对象)聚合在一起,可以通过名字访问这些值. ...
- 【笔记】javascript权威指南-第三章-类型,值和变量
javascript中的原始类型和对象类型(基本类型和引用类型) //本书是指:javascript权威指南 //以下内容摘记时间为:2013.7.27 计算机程序运行时需要对值(value ...
- javascript权威指南第11章 DOM扩展
//javascript 权威指南 第三版 第11章 DOM扩展 //取得body元素 var body = document.querySelector("body"); //取 ...
- JavaScript高级程序设计第20章JSON 笔记 (学习笔记)
第二十章 JSON 1.Json 可以表示三种类型的值: 1.简单值: 表示数值:5 表示字符串:“hello wrold”注表示字符串时必须使用双引号 2.对象: {“name”:“mi”,”ag ...
- JavaScript权威指南--第3章 类型、值和变量
在编程语言中,能够表示并操作的值(value)的类型称作数据类型(type).使用变量来储存值.JavaScript中数据类型有两种:原始类型(primitive type/基本数据类型)和对象类型( ...
- JavaScript权威指南第03章 类型、值和变量(1)
版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/huangbin10025/article/details/27953481 类型.值和变量 数据类型 ...
- javascript权威指南第16章 HTML5脚本编程
<!DOCTYPE html> <html> <head> <script type="text/javascript" src=&quo ...
- javascript权威指南第15章 使用Canvas绘图
HTML <!DOCTYPE html> <html> <head> <title>canvas</title> </head> ...
- JavaScript权威指南科20章 client记忆
20 client记忆 client几种形式存储的: web记忆 cookie IE userData 离线应用 web数据库 文件系统api 20.1 localStorage 和 sessionS ...
随机推荐
- Spring MVC <mvc:annotation-driven/>的作用
一.mvc:annotation-driven的作用 Spring 3.0.x中使用了mvc:annotation-driven后,默认会帮我们注册默认处理请求,参数和返回值的类,其中最主要的两个类: ...
- 第五章 模块之 struct、dis、正则表达式、异常处理
5.15 struct模块 pack 能够把所有的数字都固定的转换成4字节 5.16 dis dis.dis 查看计算机指令 5.16 正则表达式 基础 正则表达式概念: 是一种规则(元字符,量词) ...
- 网易自动化测试工具(airtest)的环境部署
airtest 环境配置: 1.安装Python2.7 及 Python3.6 版本(2个需要都安装) 2.配置python环境变量(AirtestIDE 需要在python2.x的环境下运行,所以尽 ...
- shell 学习笔记3-shell变量扩展
一.特殊位置参数变量 1.特殊位置参数变量 在shell中比如:$0.$1.$#,等被称为特殊位置参数变量,当命令行.函数.脚本执行等处传递参数时,就需要使用位置参数变量 参数说明如下: 2.示例$1 ...
- C#使用任务并行库(TPL)
TPL(Task Parallel Library) 任务并行库 (TPL) 是 System.Threading和 System.Threading.Tasks 命名空间中的一组公共类型和 API. ...
- https、加密安全
1.Https HTTPS在传输的过程中会涉及到三个密钥: 服务器端的公钥和私钥,用来进行非对称加密 客户端生成的随机密钥,用来进行对称加密 一个HTTPS请求实际上包含了两次HTTP传输,可以细分为 ...
- English-手机销售英文场景
http://www.engpx.com/news/18216.html https://wenku.baidu.com/view/d67a103203768e9951e79b89680203d8ce ...
- iOS UIView视图的图层控制
1.添加视图 insertSubview:atIndex: //放在子视图数组的具体索引位置 insertSubview:aboveSubview: //某个子视图前面 insertSubvi ...
- orangepi设置vnc开机自启动
首先需要创建一个文件,执行以下命令,自动打开空白文件,在里面编辑内容即可 sudo gedit /etc/init.d/tightvncserver 把以下内容粘贴进去,然后点击保存即可. #!/bi ...
- Jerry Wang从2017年到2019年的自由泳学习笔记
打腿 把注意力调整到脚部,尽量不要让他打出水面,因为在空气中大腿完全是无用功,但是如果只是脚跟出水一点,倒也没什么关心,但是主观上,要控制一下,如果你听到你的打腿是"咚咚咚咚"这样 ...