什么是JSON

  JSON(JavaScript Object Notation)指的是 JavaScript 对象表示法,是一种轻量级的数据交换格式。它的优点是易于人的阅读和编写,同时也易于及其解析和生成。它是JavaScript语法的一个子集。JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。 这些特性使JSON成为理想的数据交换语言。

    { "phone" : "123-456" }

  以上便是一个最简单的JSON的实例。

JSON的语法规则

  JSON的语法规范如下:
  - 数据在名称/值对中
  - 数据由逗号分隔
  - 大括号保存对象
  - 中括号保存数组
  可能概念看起来不太直观,我们通过几个例子来说明一下。

JSON 名称/值对

  JSON 数据的书写格式是:名称/值对。
  名称/值对包括字段名称(在双引号中),后面写一个冒号,然后是值,我们还是以上面的例子作分析:

    { "phone" : "123-456" }

  这等价于这条 JavaScript 语句:

    phone = "123-456"

  例子中包含了一个JSON对象,以大括号作为边界。其中包含了数据的名称"phone",和数据的值"123-456"。 这两个元素构成了JSON中常见的数据格式——名称 / 值对。

JSON 值

  JSON 值可以是:
  - 数字(整数或浮点数)
  - 字符串(在双引号中)
  - 逻辑值( truefalse
  - 数组(在中括号中)
  - 对象(在大括号中)
  - null
  JSON 数字可以是整型或者浮点型:

    { "age" : 20 }

  JSON 布尔值可以是 true 或者 false

    { "handsome" : true }

  JSON 可以设置 null 值:

    { "name" : null }

JSON 对象

  JSON 对象在大括号({})中书写:
  对象可以包含多个名称/值对,对象之间用逗号隔开:

    { "name" : "hjs" , "age" : 20 }

  这句等价于

    name = "hjs";age = 20;

JSON 数组

  JSON 数组在中括号中书写:
  数组可包含多个对象:

    {"name" : "hjs""phone" : [{"cellphone1" : "123-456"}  {"cellphone2" : "789-000"}]}

  例子中有两个名称/值对,第一个对象name的值是 hjs ,第二个对象 phone 的值是一个包含两个对象的数组。每个对象都代表一个电话( cellphone )。

JSON 文件

  JSON 文件的文件类型是 “.json”
  JSON 文本的 MIME 类型是 “application/json”



之后我们会学习如何JavaScript读取JSON中的内容。

JSON学习1-什么是JSON相关推荐

  1. Json学习总结(4)——Json基础知识回顾

    一.什么是JSON? JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation); JSON 是轻量级的文本数据交换格式; JSON 具有自我描述性,更 ...

  2. JSON学习(一)——了解JSON

    认识 一.第一印象 JSON:JavaSrcipt Object Notation:轻量级的数据交换格式. 理解:前后端分离开发中作为数据传递与交互的一种数据格式 二.深入学习 JSON 指的是 Ja ...

  3. python学习笔记 Network XHR json

    一.重新分析过程 从QQ音乐搜索周杰伦的歌,打印所有歌名,代码可以写成如下: import requests from bs4 import BeautifulSoup res_music = req ...

  4. AJAX 和 JSON学习笔记

    Ajax 和 Json (参考遇见狂神说b站视频) Web 1.0 时代 登录,如果失败,需要刷新页面,才能重新登录:不点击提交按钮,就不知道自己密码输错了: 现在搜索时,没有刷新页面,网页只有一部分 ...

  5. java对象转Json学习

    java对象转Json学习 json多用于数据存储.交换与传输,json相比于xml更小,更快,更容易解析 对象的表示方法 #java Person p = new Person(); p.setNa ...

  6. Java学习-11 XML与JSON

    Java学习-11 XML与JSON 1.XML 1.1.简介 可扩展标记语言(eXtensible Markup Language). 特性:1. xml具有平台无关性, 是一门独立的标记语言.2. ...

  7. 前端学习之——js解析json数组

    ** 前端学习之--js解析json数组 ** 解析json数组即对JSONArray的遍历 一.对于标准的json数组如: var result=[{"flag":1," ...

  8. Go 学习笔记(20)— Go 操作 json 文件(编码生成 json、解码 json 为 map、解码 json 为 struct)

    1. Json 概述 Go 语言对于标准格式的编码和解码都有良好的支持,由标准库中的 encoding/json . encoding/xml . encoding/asn1 等包提供支持并且这类包都 ...

  9. 学习网络请求返回json对应的model

    原来泛型可以这样用: 网络返回基类,返回一个code,msg,body,其中body不确定,所以,我们把它写成泛型 import org.json.JSONObject;/*** 网络请求的基类* C ...

最新文章

  1. 自然语言处理常用数据集
  2. bzoj 1095: [ZJOI2007]Hide 捉迷藏
  3. Oracle分区知识
  4. 【BZOJ 2809】 [Apio2012]dispatching
  5. 还在担心服务挂掉?Sentinel Go 让服务稳如磐石
  6. css 两边宽度固定中间自适应宽度
  7. 《Android 3D游戏开发技术宝典——OpenGL ES 2.0》——2.8节本章小结
  8. C++STL(set……)
  9. wordpress 自定义字段
  10. PHP课程第一次实验作业提交
  11. Java是有法_Java基础语法
  12. 【linux C】C语言中常用的几个函数的总结【二】
  13. 【Java程序设计】多线程进阶
  14. 【机器学习系列】GMM第一讲:两个角度认识高斯混合模型
  15. wechart image标签
  16. 使用bootstrap画登录页面并实现表单校验与“记住我”功能
  17. 用定量测定葡萄糖的方法检测根管微渗漏-供应海藻酸钠修饰聚丙烯酸Alg-PAA 醛基化海藻酸钠(ASA) 海藻酸钠-多聚鸟氨酸-海藻酸(A-PLO-A)定制
  18. 蓝叠模拟器的adb程序位置
  19. vbs脚本实现qq定时发消息(初级)
  20. vivoX30是android5的吗,深度剖析揭秘opporeno5质量和vivox30区别是?选哪个更好?独家揭秘报道...

热门文章

  1. 比FFT还容易明白的NTT(快速数论变换)
  2. 计算机毕业设计ssm科技类产品众筹系统9x420系统+程序+源码+lw+远程部署
  3. 三、实现LED花样流水
  4. vue中v-charts图表数据如何从后台获取?【篇二】
  5. linux系统做成iso镜像文件,如何在Linux系统中制作可启动img/iso镜像文件
  6. (3)verilog与Systemverilog两种语言编写二分频
  7. RFID读卡器增量更新思路与代码实现
  8. WordPress 元老 Alex King 逝世
  9. Verilog HDL 编程规范
  10. 大学生电子设计竞赛电源资料