JSON 语法


JSON 语法是 JavaScript 语法的子集。


JSON 语法规则

JSON 语法是 JavaScript 对象表示法语法的子集。

  • 数据在名称/值对中
  • 数据由逗号分隔
  • 大括号保存对象
  • 中括号保存数组

JSON 名称/值对

JSON 数据的书写格式是:名称/值对。

名称/值对包括字段名称(在双引号中),后面写一个冒号,然后是值:

"name" :"菜鸟教程"

这很容易理解,等价于这条 JavaScript 语句:

name ="菜鸟教程"

JSON 值

JSON 值可以是:

  • 数字(整数或浮点数)
  • 字符串(在双引号中)
  • 逻辑值(true 或 false)
  • 数组(在中括号中)
  • 对象(在大括号中)
  • null

JSON 数字

JSON 数字可以是整型或者浮点型:

{ "age":30}

JSON 对象

JSON 对象在大括号({})中书写:

对象可以包含多个名称/值对:

{ "name":"菜鸟教程" ,"url":"www.runoob.com"}

这一点也容易理解,与这条 JavaScript 语句等价:

name ="菜鸟教程"url ="www.runoob.com"

JSON 数组

JSON 数组在中括号中书写:

数组可包含多个对象:

{"sites":[{"name":"菜鸟教程" , "url":"www.runoob.com"}, {"name":"google" , "url":"www.google.com"}, {"name":"微博" ,"url":"www.weibo.com"}]}

在上面的例子中,对象 "sites" 是包含三个对象的数组。每个对象代表一条关于某个网站(name、url)的记录。


JSON 布尔值

JSON 布尔值可以是 true 或者 false:

{ "flag":true}

JSON null

JSON 可以设置 null 值:

{ "runoob":null}

JSON 使用 JavaScript 语法

因为 JSON 使用 JavaScript 语法,所以无需额外的软件就能处理 JavaScript 中的 JSON。

通过 JavaScript,您可以创建一个对象数组,并像这样进行赋值:

实例

var sites = [{ "name":"runoob" , "url":"www.runoob.com"}, {"name":"google" , "url":"www.google.com"}, {"name":"微博" ,"url":"www.weibo.com"}];

可以像这样访问 JavaScript 对象数组中的第一项(索引从 0 开始):

sites[0].name;

返回的内容是:

runoob

可以像这样修改数据:

sites[0].name="菜鸟教程";

在下面的章节,您将学到如何把 JSON 文本转换为 JavaScript 对象。


JSON 文件

  • JSON 文件的文件类型是 ".json"
  • JSON 文本的 MIME 类型是 "application/json"

JSON学习笔记(一)- 语法相关推荐

  1. Postgresql学习笔记-高级语法篇

    Postgresql学习笔记-高级语法篇 Postgresql 约束 Postgresql约束用于规定表中的数据规则. 如果存在违反约束的数据行为,行为会被约束终止. 约束可以在创建表的时候就规定(通 ...

  2. image是否有disabled属性_Vue学习笔记 模板语法、计算属性

    点击上方"蓝字"关注我们吧! vue学习笔记 官网:https://cn.vuejs.org/v2/guide/ 1.vue体验 demo示例: image.png 示例代码: & ...

  3. JSON学习笔记-3

    JSON 对象 1.对象语法 JSON 对象使用在大括号({})中书写. 对象可以包含多个 key/value(键/值)对. key 必须是字符串,value 可以是合法的 JSON 数据类型(字符串 ...

  4. Kotlin学习笔记-基础语法

    去年学习过一遍Kotlin,相比java而言,Kotlin确实有许多方便的地方,但是学习之后一直没有真正拿来写项目,很久不用很多东西都已经忘记了.最近Google宣布Kotlin成为Android开发 ...

  5. AJAX 和 JSON学习笔记

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

  6. JSON学习笔记(五)- JSON.stringify()

    JSON.stringify() JSON 通常用于与服务端交换数据. 在向服务器发送数据时一般是字符串. 我们可以使用 JSON.stringify() 方法将 JavaScript 对象转换为字符 ...

  7. JSON学习笔记(四)- JSON.parse()

    JSON.parse() JSON 通常用于与服务端交换数据. 在接收服务器数据时一般是字符串. 我们可以使用 JSON.parse() 方法将数据转换为 JavaScript 对象. 语法 JSON ...

  8. JSON学习笔记(二)- 对象

    JSON 对象 对象语法 实例 { "name":"runoob","alexa":10000,"site":null} ...

  9. JSON学习笔记-处理空白字符(使用 SSE4.2 优化字符串扫描)

    背景:一些JSON含有大量的空白字符(whitspace),在解析JSON时需要跳过这些空白字符. 那么如果我们只是简单的进行处理,当遇在输入流中到这四种空白字符( ,\t,\n,\r,)时,直接跳过 ...

最新文章

  1. io获取 pcl_点云数据可视化之PCL滤波学习
  2. SAP WM 如何看一个交货单相关的TO是从哪些货架上拣配的?
  3. 编写TA链接静态库的方法
  4. QT的QMainWindow类的使用
  5. STM32_GPIO口
  6. LeetCode 45 跳跃游戏||
  7. 阿里云存储:安防行业背后的赋能者 | 凌云时刻
  8. 机械电子工程专业和计算机科学,机械电子工程专业属于什么类别
  9. java 标准偏差函数std_如何使用JAVA计算标准差
  10. 将World中的向下箭头替换为回车符
  11. 如何修改显示Office图标而不是wps图标
  12. Spring Security小例子
  13. 半同步/半异步模式,半同步半反应堆reactor模式
  14. uni-app实现实时获取当前时间日期
  15. [转载] iOS直播相关,感觉有点用
  16. 如何创建Roadmap产品路线图
  17. 业务流程再造和IT服务能力
  18. Thales Speakers Bureau:专家云集,将探讨量子技术、5G、数字身份、网络安全和人工智能
  19. java反射机制是什么_java的反射机制是什么?
  20. 黑苹果+win10双系统折腾笔记

热门文章

  1. 21行代码AC_标题 Excel地址 2017年蓝桥杯真题(解题报告+通法)
  2. 数据库原理与应用(SQL Server)笔记 第七章 流程控制语句、系统内置函数
  3. python封装成exe后运行失败_Python的带pandas包的程序封装成exe 2018-01-11
  4. xp系统怎么关dhcp服务器,怎样解决Win XP操作系统DHCP故障:获取未使用的IP地址
  5. 使用css将超出盒子的文字显示为省略号
  6. 详解 nginx 配置文件及构建 web 虚拟主机
  7. JAVA 串口编程(二)
  8. css画带边框三角形,纯CSS画三角形(带边框)
  9. 崩坏三x86架构闪退_不给X86留活路?苹果下一代M系列芯片竟然这么强
  10. 设python中有模块m_Python 模块