欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JSON基本语法及与JavaScript的异同实例分析

程序员文章站 2022-06-20 13:55:31
本文实例讲述了json基本语法及与javascript的异同。分享给大家供大家参考,具体如下: json 的语法可以表达三种类型的值。 简单值:与 javasc...

本文实例讲述了json基本语法及与javascript的异同。分享给大家供大家参考,具体如下:

json 的语法可以表达三种类型的值。

  • 简单值:与 javascript 语法相同,可以表示字符串、数值、布尔值以及 null,但不支持 javascript 的 undefined。
  • 对象(复杂数据类型):是一组有序的键值对,每个键值对中的键可以是简单值,也可以是复杂数据类型的值。
  • 数组(复杂数据类型):是一组有序的值的列表,可以使用数值索引来访问其中的值,这个值可以是任意类型(简单值、对象或数组)。

json 只是一种表示结构化数据的格式,虽然与 javascript 中表示的数据在某些语法上相同,但它不只是应用于 javascript 中。

1 简单值

json 字符串与 javascript 字符串的区别是:json 字符串只能使用双引号!而 javascript 中字符串还可以使用单引号。

布尔值和 null 也是有效的 json 字符串。在实践中,json 更多是用来表达更复杂的数据结构的。

2 对象

json 对象与 javascript 对象有一些不同。在 javascript 中的对象字面量是这样的:

var person = {
  name : "deniro",
  age :15
}

而在 json 中的对象必须给属性加上引号,而在 javascript 中倒是可加可不加:

var person = {
  "name" : "deniro",
  "age" :15
}

json 中的对象还有两点不同:

①. 不需要声明变量。
②. 末尾不需要加分号。

在 json 中的对象的属性的值,可以是简单值,也可以是复杂类型的值:

var person = {
  "name" : "deniro",
  "age" : 15,
  "school" : {
    "name" : "mit",
    "location":"american"
  }
}

注意,同一个对象中不能出席两个同名的属性!再重复一次,json 对象中的所有属性名都必须加上双引号!!!

3 数组

json 数组采用的就是 javascript 中的数组字面量形式:

[15,"hi",true]

数组与对象结合,可以构建出更复杂的数据集合:

[
  {
   "title" :"万物简史",
   "authors":[
    "比尔·布莱森"
   ],
   year:2005
  },
   {
   "title" :"父与子全集",
   "authors":[
    "埃·奥·卜劳恩"
   ],
   year:2003
  }
]

这个数组包含了表示图书的对象,每个图书对象有一个 authors 属性,它的值也是一个数组。对象和数组一般是 json 数据结构的最外层形式。

ps:这里再为大家推荐几款相关的json在线工具供大家参考:

在线json代码检验、检验、美化、格式化工具:

json在线格式化工具:

在线xml/json互相转换工具:

json代码在线格式化/美化/压缩/编辑/转换工具:

在线json压缩/转义工具:

更多关于javascript相关内容可查看本站专题:《javascript中json操作技巧总结》、《javascript查找算法技巧总结》、《javascript错误与调试技巧总结》、《javascript数据结构与算法技巧总结》、《javascript遍历算法与技巧总结》及《javascript数学运算用法总结

希望本文所述对大家javascript程序设计有所帮助。