JSON的理解

1.json介绍  

JSON:JavaScript 对象表示法(JavaScript Object Notation)--简称JSON  

定义)轻量级文本数据交换格式  

JSON独立于语言(个人理解:json语法是js对象表示语法的子集,又因为js在前端网页中是被包含有js解析器的浏览器所解析的,所以它在不同的语言平台中是可以用来做数据的交互的)

JSON 是存储和交换文本信息的语法。类似XML。  

JSON比XML更小、更快、更易解析。

2. JSON 语法规则

(再次强调,JSON语法是JavaScript对象表示语法的子集,故他们之间存在相似之处,所以可以使用eval()函数使json 转 换为js对象,但不推荐使用eval()函数)

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

2.1 JSON名称/值对包括字段名称(在双引号中,可以理解为是字符串),后面写一个冒号,然后是值:

"myName"  :  "张星宇"
这个等价于js语句如下:

myName = "张星宇"
2.2 JSON 值

JSON的值的类型可以是

  • 数字(整数或浮点数)
  • 字符串(在双引号中)
  • 逻辑值(true或false)
  • 数组(在方括号中 如:["张星星", 100, "仙女山"])
  • 对象(在括号中 如:{ "name" : "张星星" ,"age" : 100 , "address" : " 仙女山" })
  • null
3 JSON 对象
json 对象在花括号中书写:
对象可以包含多个名称/值对
"firstName" : "李欣" ,  "lastName" : "李佳欣"

这一点也容易理解,与这条javascript 语句等价:
firstName = "李欣"
lastName = "李佳欣"

4 JSON 数组
json数组在方括号中书写:
数组可包含多个对象:
{
"employees": [
{ "firstName":"John" , "lastName":"Doe" },
{ "firstName":"Anna" , "lastName":"Smith" },
{ "firstName":"Peter" , "lastName":"Jones" }
]
}

总结:
我们可以这样去理解他们:
结合php中的概念,将数组分为3中类型,
  • 索引数组 :带有数字索引的数组
  • 关联数组 :带有指定键的数组
  • 多维数组 :包含一个或多个数组的数组(这个可以理解为map)
js数组与json数组 区别
js数组([])可以理解为 索引数组 ,可以使用for 遍历 通过索引位来得到值,如:jsArray[0]
json数组({})可以理解为 关联数组 , 以(名称/值)键值对形势存在,通过'.'运算符 + 键名称来获取值
如:jsonArray.name

多维数组可以理解为map,如下
var tt={
"people01": [
{ "name":"李星星" ,"sex":"男" , "age":33 }],
"people02": [
{ "name":"王雨" ,"sex":"女" , "age":23 }],
"people03": [
{ "name":"John" ,"sex":"男" , "age":33 }]
}


文本:专指不含格式信息的字符或文档
字符串在有时候可以理解为文本
额外补充:
文字、文本和字符,三者的区别和联系?
文字: 古代指单个汉字。在现代信息化技术中,文字的概念扩大了,成为各种西文、中午的统称。
字符: 文字和符号的统称,是信息化技术载体的基本单位。如:字母、汉字、标点符号、运算符号、特殊符号等。
文本: 不含格式信息的字符或文档。比如:记事本中的字符是纯文本,因为它不包含字体、字号、段落格式等信息。










评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值