知识点比较杂,简单的以列表形式罗列知识点

1.json是基于javascript对象字面量的,所以他们看起来很像。但是js对象字面量不需要给名称-值对中的名称两边加上双引号。而在JSON中,却是必要的。js中允许用单引号来代替双引号,但是json不允许用单引号来代替双引号。json的键名是必须要加双引号的,键值如果是字符串的话时必须要加双引号的,其他的类型可以不加。(字面量的意思是与其想要表达的意思是完全一致的值)

2.在遇到双引号里面需要有双引号引住一句话或者是什么,可以使用转义字符来表示以免冲突造成错误。(在字符串中的双引号前面加一个反斜杠字符来对其转义)

例如:{

“promo”:"Say \"Bob's the best!\" at checkout"           //这样就不会出错了

}

其他的转义例子:

\t (制表符)

{

"story":"\t Once upon a time."

}   //这是错误的

{

"story":"\\t Once upon a time."

}    //这是正确的

3.json文件使用.json扩展名

4.JSON的媒体类型是application/json

5.json中的null类型

不要把null和undefined混淆,undefined不是JSON中的数据类型,在js中undefined是在尝试获取一些不存在的对象或者变量时返回的结果。null是表示“没有值”的值,在json中,null必须使用小写。(布尔值也要小写在json中);

6.JSON验证器负责验证语法错误

https://jsonformatter.curiousconcept.com/

http://www.jsoneditoronline.org/

http://jsonlint.com/

7.JSON Schema    数据交换中的一种虚拟的“合同”,负责提供一致性检验主要包括几个方面

{
       "$schema":"http://...", //声明的名称必须是$schema,值必须是所用草拟版本的链接
  "title":"Cat",
  "properties":{                      //properties的值实质上是我们想要的JSON的名称-值对的骨架
    "name":{
      "type":"string"
    },
    "age":{
      "type":"number",
      "description":"it is three years old."
    }
  },
  "required":[                      //必填的项要加在required中,比如现在的name是必填的,description没有写在下面表示不死必须填的

    "name"
  ]
}

JSON必知必会的更多相关文章

  1. 【EatBook】-NO.1.EatBook.1.JavaData.1.001-《JSON 必知必会-Introduction to JavaScript Object Notation》-

    1.0.0 Summary Tittle:[EatBook]-NO.1.EatBook.1.JavaData.1.001-<JSON 必知必会-Introduction to JavaScrip ...

  2. H5系列之History(必知必会)

    H5系列之History(必知必会)   目录 概念 兼容性 属性 方法 H5方法       概念     理解History Api的使用方式 目的是为了解决哪些问题   作用:ajax获取数据时 ...

  3. 使用admin的步骤、必知必会13条、单表的双下划线、外键的操作、多对多的操作:

    MVC M: model 模型 与数据库交互 V: view 视图 HTML C:controller 控制器 流程 和 业务逻辑 MTV M:model ORM T:template 模板 HTML ...

  4. Elasticsearch必知必会的干货知识一:ES索引文档的CRUD

    ​ 若在传统DBMS 关系型数据库中查询海量数据,特别是模糊查询,一般我们都是使用like %查询的值%,但这样会导致无法应用索引,从而形成全表扫描效率低下,即使是在有索引的字段精确值查找,面对海量数 ...

  5. Elasticsearch必知必会的干货知识二:ES索引操作技巧

    该系列上一篇文章<Elasticsearch必知必会的干货知识一:ES索引文档的CRUD> 讲了如何进行index的增删改查,本篇则侧重讲解说明如何对index进行创建.更改.迁移.查询配 ...

  6. 读书笔记汇总 - SQL必知必会(第4版)

    本系列记录并分享学习SQL的过程,主要内容为SQL的基础概念及练习过程. 书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL i ...

  7. 读书笔记--SQL必知必会--建立练习环境

    书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL in 10 Minutes - Fourth Edition> MyS ...

  8. 读书笔记--SQL必知必会12--联结表

    12.1 联结 联结(join),利用SQL的SELECT在数据查询的执行中联结表. 12.1.1 关系表 关系数据库中,关系表的设计是把信息分解成多个表,一类数据一个表,各表通过某些共同的值互相关联 ...

  9. 读书笔记--SQL必知必会18--视图

    读书笔记--SQL必知必会18--视图 18.1 视图 视图是虚拟的表,只包含使用时动态检索数据的查询. 也就是说作为视图,它不包含任何列和数据,包含的是一个查询. 18.1.1 为什么使用视图 重用 ...

  10. 《MySQL 必知必会》读书总结

    这是 <MySQL 必知必会> 的读书总结.也是自己整理的常用操作的参考手册. 使用 MySQL 连接到 MySQL shell>mysql -u root -p Enter pas ...

随机推荐

  1. 设计模式之迭代器模式(Iterator Pattern)

    一.什么是迭代器模式? 用迭代器来封装集合对象的遍历细节,使调用者能够通过统一的接口来实现对集合的遍历 迭代器也给集合对象提供了一定的保护,想要遍历集合,直接调用迭代器的方法就好了,我们不知道也不必知 ...

  2. 微软官方实例 RazorPagesMovie 在 asp.net core 2.1 版本下的实战

    微软官方实例 RazorPagesMovie 在 asp.net core 2.1 版本下的实战 友情提示: 操作系统: MacOS 10.13.5 dotnet core: version 2.1. ...

  3. NVIC配置中的分组详解

    在配置优先级的时候,要注意一个很重要的问题,中断种类的数量. NVIC只可以配置 16 种 中断向量的优先级,也就是说,抢占优先级和响应优先 级的数量由一个 4 位的数字来决定, 把这个 4 位数字的 ...

  4. svn 连接超时,连接失败解决办法

    1.确认服务是否开启 2.Windows防火墙是否开启,如开启则关闭防火墙 3.安全软件是否将3306与443端口关闭. 关闭后无法连接

  5. Day 43数据库(Day1)

    创建表. create table student( id int not null auto_increment PRIMARY key, name archar() not null, age i ...

  6. Day 39 管道 、数据共享与地址池

    参考张磊同学的博客 http://www.cnblogs.com/chongdongxiaoyu/p/8658379.html 一.管道 #创建管道的类: Pipe([duplex]):在进程之间创建 ...

  7. Android的基础知识点

    一.Intent的2种启动方式 1.显示启动: setClass(“包名”,“启动的Activity.class”); XML文件中启动Activity 2.隐示启动: setAction(" ...

  8. Python大法之从火车余票查询到打造抢Supreme神器

    本文作者:i春秋作家——阿甫哥哥 系列文章专辑:https://bbs.ichunqiu.com/forum.php?mod=collection&action=view&ctid=9 ...

  9. 01-Python的基础知识1

    基础即常识. - Python的对象模型 - Python中一切皆对象. - 内置对象:数字,字符串,列表,元组,集合等等. - 基本输入 - 基本模式    变量 = input("提示字 ...

  10. iOS开发总结--三方平台开发之分享

    1.前言 在公司参与了多个应用三方平台的开发,涉及微信.微博.QQ.Facebook.meetup等,总结一下一般的接入三方平台SDK方法. 2.接入三方SDK 任何应用要接入三方平台,都需要在该平台 ...