JSON数据处理
对象和JSON(数据格式)
目标
 json数据处理
一、对象
js 三大核心:ECMA的基本语法 BOM DOM
基本语法:注释 变量 数据类型转换 流程控制 运算符 对象 (页面标签) 绑定事件。
变量 : 只能存储一个
数组: 可以存储多个数据
1、什么是对象
 函数:一段封装好的 具有特定功能的代码块。被调用时执行
生活中:对象,常有两层意思,指行动或思考时作为目标的事物或特指恋爱的对方等含义。
程序中:在计算机科学中,对象(英语:object),是一个存储器地址,其中拥有值,这个地址可能有标识符指向此处。
编程中:万物皆对象。
所有对象都有自己的属性和行为。
var a = 5;
编程其实就是对现实的模拟。对象具有属性和行为。对象是指实实在在存在的具体事物。
js中的对象:之前研究的就是html页面中的标签(属性,事件/方法)。
创建对象
 方式一
var   zyf=new Object();
var lxl=new Object();
		lxl.name="lxl"
		lxl.xh="zyf1";
		lxl.zmxh=function(){
			alert(lxl.name+"喜欢吃"+lxl.xh);
		}
		lxl.zmxh();
方式二、
var dahu={
			name:"大虎",
			height:180,
			color:'red',
			//属性名:属性值
			//行为名:function(){
			jt:function(e){
				alert(dahu.name+"喜欢"+e);
			}
			
		}
		dahu.jt("大开杀戒");
对象的数据格式:
//对象的取值:
			//方法一:
			//alert(person1.name)
			//方法二:
			alert(person1["name"]);
1.对象的创建两种方式。
2.对象中可以存储任意类型的数据。
3.取值 对象.属性名/对象[“属性名”]。
二、工具函数
| 方法 | 含义 | 
|---|---|
| $. type( ) | 用来测试数据的类型 | 
| $.isNumeric() | 用来测试数据是否为数字 | 
| $.trim() | 用来去除字符串两端的空格 | 
| $.parseJSON() | 用来把字符串解析成JSON对象 | 
$.each()遍历数组和对象
 工具函数
三、json简介
1、什么是
 注意json的目的
- JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation)
- JSON 是轻量级的文本数据交换格式 ( 前端和后台数据交互 )(主要、重要)
- JSON 独立于语言:JSON 使用 Javascript语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。 目前非常多的动态(PHP,JSP,.NET)编程语言都支持JSON。
- JSON 具有自我描述性,更易理解
2.语法格式
 跟js普通对象类似。
JSON 语法是 JavaScript 对象表示语法的子集。
-  数据在名称/值对中 键值对 [{key:value,key:value,key:value},{key:value,key:value,key:value}]json对象数组 [3,5] 
-  数据由逗号分隔 
-  大括号 {} 保存对象 
-  中括号 [] 保存数组,数组可以包含多个对象 [{},{},{},{},{}] 
 注意必须是字符串 注意不能加函数 可以包数组对象 可以无限套娃
var lxl={
		"name":"zyf",
		"xh":"zyf",			/
 		"xhc":[{
			"a":"火锅",
			"b":"奥利哦"
		},{
			"c":"bj"
		},
		{	
			"超级喜欢":{
				"a":"zyf",
				"b":"zyf",
				"c":"zyf"
			} 
			}
		]			
	}
	//对象设计的取出。 对象名属性名/对象名["属性名"]
	//alert(lxl.xhc[1]["c"])//bj
	alert(lxl.xhc[2]["超级喜欢"]["a"])//zyf
$.each()方法
	**2.2、数组djson对象**
<body>
		市<select onblur="">
			 
		</select>
		区<select>
			
		</select>
		<script type="text/javascript">
		
			var addrObj = {
							"北京":["朝阳区","顺义区","海淀区"],
							"郑州":["金水区","二七区","中原区"],
							"开封":["祥符区","龙亭区"]
						}
						//1先取北京的键值对的对应 然后把值1遍历创建 k对应市
			$.each(addrObj,function(k,o){
				$("select:eq(0)").append(
				$("<option></option>").text(k)			
					)							 
				}
			  )//2把第一个select的val的值对应判断 得到键值对 然后遍历创建数组的				   
			  var del=$("select:eq(0)").val();
			  
			  
			  $.each(addrObj[del],function(i,v){
			  	$("select:eq(1)").append(
			  	$("<option></option>").text(v)			  	
			)
			});
			//3. 事件绑定   onchang 当内容改变的时候删除原本的select内容然后用这个事件绑定的val的值判断循环遍历生成
			//
			$("select:eq(0)").change(function(){
				$("select:eq(1)").empty();
				
					$.each(addrObj[$(this).val()],function(i,v){
					  	$("select:eq(1)").append(
					  	$("<option></option>").text(v)			  	
					)
				
			}
			);
			}
			);	
3、json的作用
 把 JSON 文本转换为 JavaScript 对象
 JSON 最常见的用法之一,是从 web 服务器上读取 JSON 数据(是字符串类型),将字符串类型的 JSON 数据转换为 JavaScript 对象,然后在网页中使用该数据。
 因为json格式的字符串数据不能再js中直接使用,需要先转换 ,先将字符串类型的json转换成正式的json对象才可以使用。
var str = '{"上海":["浦东区","浦西区","浦南区"],"北京":["朝阳区","顺义区","海淀区"]}';
		var str1 = JSON.parse(str);//通过这个个方法将json格式的字符串准换成json对象。
		var str2  = JSON.stringify(str1);//通过这个个方法将json对象转换成json格式的字符串。
		alert(str1)// object Object
		alert(str2)//字符串//{"上海":["浦东区","浦西区","浦南区"],"北京":["朝阳区","顺义区","海淀区"]}
Json.parse()
 JSON 通常用于与服务端交换数据。
在接收服务器数据时一般是字符串。
我们可以使用 JSON.parse() 方法将字符串转换为 Json 对象。
注意事项:转换的字符串的格式一定要是json格式
json.stringify()
 可以使用JSON.stringify()方法将JSon对象转换为字符串
读取外部JSON文件(自己扩展)
 
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号