JSON简述

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_40688217/article/details/89480377

JSON基本概念

1.JSON:JavaScript对象表示法(JavaScript Object Notation)。
2.JSON是存储和交换文本信息的语法,类似XML。它采用键值对的方式来组织,易与人们阅读和编写,同时也易于机器解析和生成。
3.JSON是独立于语言的,也就是说不管什么语言,都可以解析json,只需要按照json的规则来就行。

JSON与XML比较

1.json的长度和xml格式比起来很短小。
2.json读写的速度更快。
3.json可以使用JavaScript内键的方法直接进行解析,转换成JavaScript对象,非常方便。

JSON语法规则

json数据的书写格式是:名称/值对。
名称/值对组合中的名称写在前面(在双引号中),值对写在后面(同样在双引号中),中间用冒号隔开:比如"name":“郭靖”

json的值可以是下面这些类型:
数字(整数或浮点数),比如123,1.23
字符串(在双引号中)
逻辑值(true或false)
数组(在花括号中)
对象(在花括号中)
null

{
	"staff":[
		{"name":"洪七","age":"70"},
		{"name":"郭靖","age":"35"},
		{"name":"黄蓉","age":"30"}
	]
}

JSON解析

1.eval和JSON.parse
2.在代码中使用eval是很危险的!特别是用它执行第三方的JSON数据(其中可能包含恶意代码)时,尽可能使用JSON.parse()方法解析字符串本身,该方法还可以捕捉JSON中的语法错误。
eval



在这里插入图片描述
由上面两图可以看出,两种方式效果一样,但是将json字符串稍微做下改动再比较两种方法会怎么样呢

在这里插入图片描述

在这里插入图片描述
由此可知,用eval方式解析第三方json字符串时其中的一些方法仍旧会执行,这是非常危险的,所以建议用JSON.parse的方式解析

JSON格式化和校验工具

强烈推荐:jsonlint.com
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_40688217/article/details/89480377