jQuery第七章 json

该博客介绍了JSON的基本概念,包括它的用途、与XML的区别,强调了它可以存储各种类型数据的特点,并详细讲解了JSON的两种数据格式:对象和数组格式,同时涵盖了jQuery中的JSON相关方法和结构写法。
摘要由CSDN通过智能技术生成

1:什么是json?

	JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。
	它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。
	简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 
	易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率
	json本身是一个对象,主要作用是存储数据(json是存储和交换文本信息的语法,类似XML),json可以存储任何类型的数据。

2.json是干嘛的?

json是存储和交换文本信息的语法,类似XML
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
	</body>
	<script type="text/javascript">
//		1:
//		var arr=[1,2,3];
//		alert(arr[0])
//		2:
//		var obj={
//			name:'tom',
//			age:12,
//			job:'学生'
//		}
//		alert(obj.name)
//		3:
//		var o={
//			arr:['name','age','12'],
//		}
//		alert(o.arr[0])
//		4:
//		var arr=[
//				{'name1':'流量1','age1':'2','job1':'学生1'},
//				{'name2':'流量2','age2':'12','job2':'学生2'},
//				{'name3':'流量3','age':'3','job3':'学生3'}
//		]
//
//		alert(arr[2].job3)
//		5:输出打印数据   for in
//		var o={
//			name:'jack',
//			age:12,
//			job:'学生',
//			sex:'男'
//		}
//		document.write(o)
//		document.write(o.length)
//		取键写法
//		for(var i in o){
//			document.write(i+'<br>')
//		}
//		取值写法
//		for(i in o){
//			document.write(o[i]+'<br>')
//		}
//		6:
//		var obj={
//			arr:[
//					{name:'老栗1','age':1,sex:'男1',h:1},
//					{name:'老栗2','age':2,sex:'男2',h:2},
//					{name:'老栗3','age':3,sex:'男3',h:3},
//			]
//		}
//		for(var i=0; i<obj.arr.length;i++){
//			document.write(obj.arr[i].name)
//		}


	</script>
</html>

3:json和XML的区别?

小,快,容易解析

4:json可以存储任何类型的数据
5:json数据格式有2种写法:
1:对象格式
2:数组格式

6:json方法

eval()  将js代码转换成对象/不建议用,安全性太低
json提供2个方法,但是要求浏览器版本高
(现在浏览器不影响了,如果想让方法兼容低版本浏览器,请下载json.js)

stringify()		讲json转换成js字符
**stringify()方法除了可以转换以外,方法中的第2个参数是过滤
* 你要留哪个值,就以数组形式写到方法里面
* 第3个参数是数字   可以改变数据的距离
parse()			将js字符串转换成json
**parse()所有的字符必须加双引号	
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
	</body>
	<script type="text/javascript">
//		1检查json
//		alert(typeof JSON)
//		2:parse() 将字符串转成json
//		var arr='[{"name":"laoli1","age":"1","sex":"男"},{"name":"laoli1","age":"1","sex":"男"},{"name":"laoli1","age":"1","sex":"男"}]'
//		alert(typeof arr)
//		alert(arr[0].name)
//		var a=JSON.parse(arr);
//		alert(typeof a)
//		alert(a[0].name)
//		3:eval()  将js代码转换成对象/不建议用,安全性太低
//		var arr='[{"name":"laoli1","age":"1","sex":"男"},{"name":"laoli1","age":"1","sex":"男"},{"name":"laoli1","age":"1","sex":"男"}]';
//		alert(typeof eval(arr))
//		alert(typeof JSON.parse(arr))
//		4:stringify()		讲json转换成js字符
//		var obj=[{name:'tom',age:12,h:170},{name:'jack',age:13,h:175},{name:'mac',age:14,h:180}];
//		alert(typeof obj)
//		var o=JSON.stringify(obj)
//		alert(typeof o)
		
//		var o=JSON.stringify(obj,['name','tom'],1)
//		alert(o)

	</script>
</html>

7:json结构写法

var obj={
	"sites": {
	    "site": [
	      {
	        "id": "1",
	        "name": "菜鸟教程",
	        "url": "www.runoob.com"
	      },
	      {
	        "id": "2",
	        "name": "菜鸟工具",
	        "url": "c.runoob.com"
	      },
	      {
	        "id": "3",
	        "name": "Google",
	        "url": "www.google.com"
	      }
	    ]
	}
}
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		
	</head>
	<body>
	</body>
	<script type="text/javascript">
	
		
var obj={
"sites": {
    "site": [
      {
        "id": "1",
        "name": "菜鸟教程",
        "url": "www.runoob.com"
      },
      {
        "id": "2",
        "name": "菜鸟工具",
        "url": "c.runoob.com"
      },
      {
        "id": "3",
        "name": "Google",
        "url": "www.google.com"
      }
    ]
}
}
//alert(obj.sites.site[0].id)
for(var i=0; i<obj.sites.site.length; i++){
	for(var j in obj.sites.site[i]){
		document.write(obj.sites.site[i][j]+'<br>')
	}
}


//var obj={
//	"shop":[
//			{
//				"name":"Nike",
//				"money":"$130",
//				"sex":"通用",
//				"describe":"2019年春季新款",
//				"url":"<img src='img/1.jpg'>"
//			},
//			{
//				"name":"Nike",
//				"money":"$130",
//				"sex":"通用",
//				"describe":"2019年春季新款",
//				"url":"<img src='img/2.jpg'>"
//			}
//		]
//}

//document.write(obj.shop[1].name)
//document.write(obj.shop[0].url);

//	for(var i=0; i<obj.shop.length; i++){
//		for(a in obj.shop[i]){
//			document.write(obj.shop[i][a]+"<br>")
//		}
//	}


	</script>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
(答案见下载资源) 上机任务1 用chrome打开dom.sample2.html页面, 在chrome的控制台中输入jQuery代码并执行,完成以下选择动作: (1)查找id号为tigerLily的元素 (2)查找拥有类myList的元素 (3)查找所有的input元素 (4)查找所有img元素和tr元素 (5)查找id号为coffeePot和id号为someDiv的元素 (6)选择具有id属性的所有元素 (7)选择具有id属性的input元素 (8)选择其value属性等于A的元素 (9)选择其value属性等于A或等于C的元素 (10)选择其title属性值中含有dog的img元素 (11)选择其href属性值以http开头的a元素 (12)选择div元素内嵌套的span元素 上机任务2 用chrome打开dom.sample2.html页面, 在chrome的控制台中输入jQuery代码并执行,完成以下选择动作: (13)选择元素li,该元素作为拥有myList类的ul元素的直接子元素 (14)选择id号为radioA的input元素后面的第一个input兄弟元素 (15)选择id号为radioA的input元素后面的所有input兄弟元素 (16)选择dom sample页面中第3个tr元素 (17)选择其type属性值checkbox且索引为偶数的input元素 (18)选择非最后一行的tr元素 (19)选择所有的checkbox元素 (20)选择所有被选中的表单元素 (21)选择含有1972的td元素 (22)选择包含有sapn元素的div元素 (23)选择表格中每行的第一个单元格和最后一个单元格 (24)选择表格中第3行,标题行不算(要求用nth-child()过滤器) 上机任务3 用chrome打开dom.sample2.html页面,该页面中内嵌有几个CSS类:.red .green .blue .yellow .thickBorder .seeThrough 在chrome的控制台中输入jQuery代码并执行,完成以下选择动作: (1)将拥有alt属性的倒数第二个图片元素应用yellow类 (2)将第一个checkbox表单元素应用.green样式 (3)求id值为checkbox3的元素在所有表单元素里的顺序号 (4)用一条链式语句完成:先对所有img元素应用seeThrough样式,再为所有img元素和tr元素应用yellow样式 (5)用filter方法实现:选择单元格内容为Java或Smalltalk的单元格 (6)取图片集中的第2,3,4张图片 (7)用has方法实现:选择那些包含有ul元素的li元素 (8)将tbody每个单元格里的文字设为:我爱jQuery (9)查找form元素的后代元素中标签为label的元素 (10)查找表单元素中是否有id值为checkbox5的元素 提示: 为某dom元素应用某css样式可以使用jQuery中的addClass方法,例如:将id为tt的div元素应用.bt样式,可用些语句:$("#tt").addClass("color","red");
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值