JavaScript————JSON数据封装

什么是JSON?

  • 全称:JavaScript Object Notation
  • 是一种轻量级的数据交换格式
  • JSON是用于存储和传输数据的格式
  • JSON通常用于服务端向网页传输数据

JSON格式仅仅是一个文本 文本可以被任何编程语言读取 或者作为数据格式传递
可以将JSON数据转换为JavaScript对象

JSON:它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。

JSON语法规则

  • 数据为键值对
  • 每一个数据由键值对隔开
  • { } —— 保存数据
  • [ ] —— 保存数组

JSON数据封装

<script type="text/javascript">
	var Studentdata = {
		"name": "KIKO",
		"age": "15",
		"eat": function() {
			alert("吃饭")
		}
	}
	var name = Studentdata.name;
	var age = Studentdata.age;
	alert(name)
	alert(age)
	Studentdata.eat()
</script>

JSON数据嵌套

<script type="text/javascript">
	var person = {
		"name": "TOM",
		"age": "25",
		"car": {
			"carName": "BaoHorse",
			"carPrice": "$10000" ,
			"carColor": ['black', 'red', 'white'],
		}
	}
	alert(person.name);
	alert(person.car.carColor[1])
</script>

数组+遍历数组

<script type="text/javascript">
	var p1 = {
		"name": "张三",
		"age": 23,
		"sal": 1000
	};
	var p2 = {
		"name": "李四",
		"age": 24,
		"sal": 1000
	};
	var p3 = {
		"name": "王五",
		"age": 25,
		"sal": 1000
	};
	var p4 = {
		"name": "赵六",
		"age": 26,
		"sal": 1000
	};
	// js嵌套
	var arr01 = [p1, p2, p3, p4]
	alert(arr01[1][1]);
	// JSON嵌套
	var arr02 = [{
		"name": "张三",
		"age": 23,
		"sal": 1000,
	}, {
		"name": "李四",
		"age": 24,
		"sal": 1000
	}, {
		"name": "王五",
		"age": 25,
		"sal": 1000
	}, {
		"name": "赵六",
		"age": 26,
		"sal": 1000
	}];
	alert(arr02[2].name)
	for (index in arr02){
		var obj = arr02[index]
		for(key in obj){
			var v = obj[key]
			alert(key+":"+v)
		}
	}
</script>

相关函数

函数描述
JSON.parse()用于将一个 JSON 字符串转换为 JavaScript 对象。
JSON.stringify()用于将 JavaScript 值转换为 JSON 字符串。

其他语言只能把JSON当成字符串来看待,返回给前台是一个JSON字符串,前台要解析JSON字符串中的数据,就必须先把JSON字符串转换成JSON对象

<script type="text/javascript">
	var p1 = {
		"number":"001",
		"name":"Lily",
		"work":"teacher"
	}
	//JSON对象转换成JSON字符串
	var str = JSON.stringify(p1);
	alert(str)
	//JSON字符串转换成JSON对象
	var pp1 = JSON.parse(str)
	alert(p1)
	for (key in pp1) {
		var v = pp1[key]
		alert(key+":"+v)
	}
	// JSON字符串格式 ——————————单引号加{ }
	var jsonStr='{"name":"李四","age":23}';
	alert(JSON.parse(jsonStr))
</script>
注意事项
  • 1.JSON字符串不要美化——不能带有换行空格,否则JSON.parse(jsonStr)就转换不了
  • 2.var jsonStr2="{‘name’:‘李四’,‘age’:23}"; 这种格式的JSON字符串是不符合规范的,那么你JSON.parse(jsonStr2)转换不了————只能单引号中加{ }
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值