json就是字符串!

json就是字符串!

json就是字符串!

重要的事情说三遍!
json本质就是字符串,经过序列化的字符串。json的出现只是方便传输。
你可以将所有的数据类型用序列化函数序列化json字符串,然后再用反序列化函数恢复其初始数据类型。

Json的规格非常简单,只用一个页面几百个字就能说清楚,而且Douglas Crockford声称这个规格永远不必升级,因为该规定的都规定了。
1) 并列的数据之间用逗号(", ")分隔。
2) 映射用冒号(": ")表示。
3) 并列数据的集合(数组)用方括号("[]")表示。
4) 映射的集合(对象)用大括号("{}")表示

JSON格式支持的数据类型有以下:

类型 描述
Number 在JavaScript中的双精度浮点格式
String 双引号的反斜杠转义的Unicode
Boolean true 或 false
Array 值的有序序列
Value 它可以是一个字符串,一个数字,真的还是假(true/false),空(null )等
Object 无序集合键值对
Whitespace 可以使用任何一对中的令牌
null empty

数字

  • 这是一个双精度浮点格式在JavaScript中,这取决于执行

  • 八进制和十六进制格式不被使用。

  • 非NaN或无穷大用数字

以下的表格显示数字类型:

类型 描述
Integer Digits 1-9, 0 and positive or negative
Fraction Fractions like .3, .9
Exponent Exponent like e, e+, e-,E, E+, E-

语法:

var json-object-name = { string : number_value, .......}

实例:

示例显示数字的数据类型值不被引用:

var obj = {marks: 97}

字符串

  • 这是一个零个或多个双引号的Unicode字符用反斜杠转义序列。

  • 字符是一个字符串,即字符串长度为1

该表显示字符串类型:

类型 描述
" double quotation
  reverse solidus
/ solidus
b backspace
f form feed
n new line
r carriage return
t horizontal tab
u four hexadecimal digits

语法:

var json-object-name = { string : "string value", .......}

示例:

示例显示字符串数据类型:

var obj = {name: 'Amit'}

布尔

它包括true或false值

语法:

var json-object-name = { string : true/false, .......}

示例:

var obj = {name: 'Amit', marks: 97, distinction: true}

数组

  • 它是值的有序集合

  • 这些被封闭方括号这意味着阵列开始。并以...结束

  • 值之间以,(逗号)

  • 数组索引可以从0或1开始

  • 键的名称时,应使用连续整数阵列

语法:

[ value, .......]

示例:

例如数组,包含多个对象:

{"books": [ { "language":"Java" , "edition":"second" }, { "language":"C++" , "lastName":"fifth" }, { "language":"C" , "lastName":"third" } ] }

对象

  • 这是一个无序设置的名称/值对

  • 对象被括在大括号中,它开始'{' 并以'}' 结束

  • 每个名称后跟“:”(冒号)和名称/值对 ,(逗号)分隔。

  • 键都必须是字符串应该是彼此不同的

  • 对象时,应使用键名是任意的字符串

语法:

{ string : value, .......}

示例:

例如显示对象:

{"id": "011A", "language": "JAVA", "price": 500, }

空白

它可以插入到任何一对令牌之间。它可以添加到代码更具可读性。实例表明 不带空格的声明:

语法:

{string:"   ",....}

EXAMPLE:

var i= "   sachin"; var j = " saurav"

null

这是空类型

语法:

null

示例:

var i = null; if(i==1) { document.write("<h1>value is 1</h1>"); } else { document.write("<h1>value is null</h1>"); }

JSON 值

它包括:

  • number (integer or floating point)

  • string

  • boolean

  • array

  • object

  • null

语法:

String | Number | Object | Array | TRUE | FALSE | NULL

示例:

var i =1; var j = "sachin"; var k = null;

转载于:https://www.cnblogs.com/ziyun20160613/p/10252619.html

JSON 是个什么??!!!相关推荐

  1. 【golang程序包推荐分享】分享亿点点golang json操作及myJsonMarshal程序包开发的踩坑经历 :)

    目录[阅读时间:约5分钟] 一.概述 1.Json的作用 2.Go官方 encoding/json 包 3. golang json的主要操作 二.Json Marshal:将数据编码成json字符串 ...

  2. Go 知识点(04)— 结构体字段转 json格式 tag 标签的作用

    我们知道在 Go 语言中无论是变量.常量还是函数,对于首字母大小写有不同的处理. 首字母大写,标志着该字段或者函数是能导出的,也就是可以被其它包所能访问的: 首字母小写,标志着该字段是私有的,只能在本 ...

  3. VS Code 配置调试参数、launch.json 配置文件属性、task.json 变量替换、自动保存并格式化、空格和制表符、函数调用关系、文件搜索和全局搜索、

    1. 生成配置参数 对于大多数的调试都需要在当前项目目录下创建一个 lanch.json 文件,位置是在当前项目目录下生成一个 .vscode 的隐藏文件夹,在里面放置一些配置内容,比如:settin ...

  4. Python 标准库之 json

    1. josn 定义 JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式.JSON的数据格式其实就是python里面的字典格式,里面可以包含 ...

  5. python中如何对复杂的json数据快速查找key对应的value值(使用JsonSearch包)

    前言 之前在实际的项目研发中,需要对一些复杂的json数据进行取值操作,由于json数据的层级很深,所以经常取值的代码会变成类似这样: value = data['store']['book'][0] ...

  6. 数据库里存json数据

    需求: 查询上个月每个人各个插件的总加分汇总为一个json存储到一个字段里 查询上个月每个组织机构插件的各个插件的总加分汇总为一个json存储到一个字段里 流程: 查询后返回结果是一个List集合,每 ...

  7. http传输json文件_python

    https://cloud.tencent.com/developer/article/1571365 http传输图片 https://www.cnblogs.com/jruing/p/122156 ...

  8. python:Json模块dumps、loads、dump、load介绍

    20210831 https://www.cnblogs.com/bigtreei/p/10466518.html json dump dumps 区别 python:Json模块dumps.load ...

  9. dataframe 转json

    20210810 字符串转换为字典的时候,如果没有引号会报找不到 这个名称 字符串类型变字典 本身含有字典的括号 列表里面本身要是字典类型 才能通过此方法 把列表转换为dataframe # 格式检查 ...

  10. Json文件解析(下

    Json文件解析(下) 代码地址:https://github.com/nlohmann/json 从STL容器转换 任何序列容器(std::array,std::vector,std::deque, ...

最新文章

  1. 制作U盘启动盘将Ubuntu 12.04升级为14.04的方法
  2. vue的列表交错过渡
  3. .Net Conf 2020 之回顾
  4. FFmpeg options
  5. 新编标准日本语 第26课 课文
  6. latex在论文中添加行号
  7. Linux下查杀进程的方法说明
  8. 树莓派 HC-SRO4超声波测距模块的使用
  9. 电脑主机前置耳机插孔没声音——解决办法
  10. 利用python爬取汽车之家,需要买车的程序员可以学
  11. 链接mysql 504_总结403到504的常用问题
  12. ESP32-C3 SPI salve示例错误
  13. 结对项目-数独程序扩展
  14. 计算机图形学-五角星的画法
  15. 【光耦 Normalized...和 CTR 测试条件及测试曲线 解读 : PC817和LTV-1007-TP1-G】
  16. 3559a sample_vio 修改中遇到的奇怪问题
  17. oracle 基本语法大全
  18. IC前后端001:高扇出的危害
  19. textarea去掉右下角三角图标
  20. mac编码查看及修改

热门文章

  1. python这个软件学会能做什么工作-工作三年却被实习生抢了饭碗,学会Python到底有多吃香?...
  2. python常用模块大全总结-python常用模块整理
  3. python简单代码演示效果-10分钟教你用python 30行代码搞定简单手写识别!
  4. python实现简单的api接口-python中接口的实现实例
  5. python语言入门自学-如何系统地自学 Python?
  6. python可以做什么项目-适合Python 新手的5大练手项目,你练了么?
  7. python绘制3d图形-python matlibplot绘制3D图形
  8. 软件测试用python一般用来做什么-做软件测试的, python应该掌握成怎么样 ?
  9. python恶搞小程序-知道了这个,你也能写出 Python 趣味小程序
  10. 学python的好处-python有什么优势