JSON语法、对象、遍历数组的区别和基本操作

JSON 语法规则

  1. JSON 语法是 javascript 对象表示语法的子集。
  2. 数据在名称/值对中
  3. 数据由逗号分隔
  4. 花括号保存对象
  5. 方括号保存数组

JSON 名称/值对

  1. JSON 数据的书写格式是:名称/值对。
  2. 名称/值对组合中的名称写在前面(在双引号中),值对写在后面(同样在双引号中),中间用冒号隔开:
  3. "firstName":"John"

JSON 值

  1. JSON 值可以是:
  2. 数字(整数或浮点数)
  3. 字符串(在双引号中)
  4. 逻辑值(true 或 false)
  5. 数组(在方括号中)
  6. 对象(在花括号中)
  7. null

JSON正常就是由对象和数组组成,对象使用对象的方法来进行操作。数组使用数组的方法来进行操作。

数组

  1. var ourcountry=[["北京市"],["上海市"],["合肥市","芜湖市","蚌埠市"]]; // 数组
  2. alert(ourcountry[2][1]);

JSON对象

  1. var status_process = {
  2. " name5" : ‘闲置期‘,
  3. "name1" : ‘播种期‘,
  4. "name2" : ‘苗期‘,
  5. "name3" : ‘生长期‘,
  6. "name4" : ‘采收期‘
  7. }
  8. alert(status_process["name5"]);
  9. alert(status_process.name5);
  10. // 两个都为:闲置期

JSON字符串

所谓json字符串,是指该字符串变量的值与json的格式相同,但是不是json对象,比如:

  1. var s1="{";
  2. var s2 = " ‘name5‘ : ‘闲置期‘, ‘name1‘ : ‘播种期‘,‘name2‘ : ‘苗期‘,‘name3‘ : ‘生长期‘,‘name4‘ : ‘采收期‘";
  3. var s3="}";
  4. var status_process=s1+s2+s3;

JSON数组遍历

  1. packJson = [
  2.  
  3. {"name":"zhang", "password":"123"},
  4.  
  5. {"name":"li", "password":"456"}
  6.  
  7. ];
  8.  
  9. for(var p in packJson){//遍历json数组时,这么写p为索引,0,1
  10.  
  11. alert(packJson[p].name + " " + packJson[p].password);
  12.  
  13. }
  14.  
  15. // 或者
  16. for(var i = 0; i < packJson.length; i++){
  17.  
  18. alert(packJson[i].name + " " + packJson[i].password);
  19. }

JSON数组的操作

1.定义

var josnArry=[];

2.添加

jsonArry.push(jsonObj);

3.删除

  1. delete jsonArry[0];
  2. splice(index,length):

4.循环访问数组

a.jquery

  1. $.each(jsonArry,function(index,item){
  2. var userId=item.userId;
  3. });

b.一般方式

  1. for(var i=0;i<jsonArry.length;i++)
  2. {
  3. var userId=jsonArry[i].userId;
  4. }

c.特殊方法

  1. for(var item in jsonArry)
  2. {
  3. var userId=jsonArry[item].userId;//注意:此处的item不是数组项,而是数组项的索引
  4. }

JSON对象遍历

  1. myJson = {"name":"ji", "password":"123"};
  2.  
  3. for(var p in myJson){//遍历json对象的每个key/value对,p为key
  4.  
  5. alert(p + " " + myJson[p]);
  6.  
  7. }

字符串和json对象和json对象数组相互转换

  1. var jsonStr = "{\"userId\":\"001\"}"; // json对象字符串
  2. var jsonArryStr = "[{\"userId\":\"001\"},{\"userId\":\"002\"}]"; // json数组字符串
  3. var jsonObj = JSON.parse(jsonStr); // 字符串转为json对象
  4. var jsonArry = JSON.parse(jsonArryStr); // 字符串转为json数组
  5. var jsonStr = JSON.stringify(jsonObj); // json对象转为字符串
  6. var jsonArryStr=JSON.stringify(jsonArry);// json数组转为字符串
  7. alert(jsonStr);
  8. alert(jsonArryStr);
  9. alert(jsonObj.userId);
  10. alert(jsonArry[0][‘userId‘]);

提示:

只有数组或者json数组才可以使用length方法。json对象使用length方法无效。

如果json对象的子元素是数组或者json数组,也可以使用length方法。可以用于遍历数据。

原文地址:https://www.cnblogs.com/mengmengi/p/10195927.html

时间: 2024-09-28 19:09:52

JSON语法、对象、遍历数组的区别和基本操作的相关文章

JSON数组,JSON对象,数组的区别与基本操作整理

JSON 语法规则 JSON 语法是 javascript 对象表示语法的子集. 数据在名称/值对中 数据由逗号分隔 花括号保存对象 方括号保存数组 JSON 名称/值对 JSON 数据的书写格式是:名称/值对. 名称/值对组合中的名称写在前面(在双引号中),值对写在后面(同样在双引号中),中间用冒号隔开: "firstName":"John" JSON 值 JSON 值可以是: 数字(整数或浮点数) 字符串(在双引号中) 逻辑值(true 或 false) 数组(

在JS中,对象和数组的区别理解

学习js一段时间,一度搞不清楚“数组”和对象的根本区别.二者都可以用来表示数据的集合. 比如说一个数组是a=[1,2,3,4],一个对象是a={0:1,1:2,2:3,3:4} 输出alert(a[1]),二者的输出结果相同.花了一点时间整理了我对对象和数组的理解. 区别一: 数组是有序数据的集合,而对象是无序数据的集合. 区别二: 数组的数据没有名称,只有下标,而对象的数据需要指定名称. 学过其他语言的人可能会提出“关联数组“是可以有名称的. 比如在js中,可以这样定义一个关联数组: a[“城

jQuery$.each循环遍历详解,各种取值对比,$.each遍历数组、对象、Dom元素、二维数组、双层循坏、类json数据等等

jQuery 遍历函数包括了用于筛选.查找和串联元素的方法. 函数 描述 .add() 将元素添加到匹配元素的集合中. .andSelf() 把堆栈中之前的元素集添加到当前集合中. .children() 获得匹配元素集合中每个元素的所有子元素. .closest() 从元素本身开始,逐级向上级元素匹配,并返回最先匹配的祖先元素. .contents() 获得匹配元素集合中每个元素的子元素,包括文本和注释节点. .each() 对 jQuery 对象进行迭代,为每个匹配元素执行函数. .end(

js遍历数组和遍历对象的区别

来源:http://www.cnblogs.com/yun007/archive/2013/06/06/3121393.html <script> //----------------for用来遍历数组对象-- var i,myArr = [1,2,3]; for (var i = 0; i < myArr.length; i++) { console.log(i+":"+myArr[i]); }; //输出结果为: 0:1 1:2 2:3 //---------fo

vue遍历数组和对象的方法以及他们之间的区别

前言:vue不能直接通过下标的形式来添加数据,vue也不能直接向对象中加值,因为那样即使能加入值页面也不会跟着改变 一,vue遍历数组 1,使用vue数组变异方法 pops 删除数组租后一项 push 往数组里面增加一项 shift 删除数组第一项 unshift 往数组第一项里面加一线内容 splice 数组截取 sort 数组排序 reverse 对数组取反 2,数组的引用 3,vue set方法 二,vue遍历对象 1,对象引用 2,set方法 由于时间问题下回仔细说明,谢谢 原文地址:h

jQuery遍历对象、数组、集合实例

1.jquery 遍历对象 复制代码代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">  <HTML>   <HEAD>    <TITLE> New Document </TITLE>    <script language="javascript" type="text/javascript"

jquery 遍历对象、数组、集合

转:http://blog.sina.com.cn/s/blog_5db0dfe40100hay7.html 使用了jquery有段时间了,整理下jquery中的遍历问题. 1.jquery 遍历对象 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML>  <HEAD>   <TITLE> New Document </TITLE>   &l

JS遍历对象或者数组

一.纯js实现 Js代码   <script> var obj = {"player_id":"GS001","event_id":"1","destroy":"97%"}; var props = ""; for(var p in obj){ if(typeof(obj[p])=="function"){ obj[p](); }els

foreach ()语法结构提供了遍历数组的简单方式

foreach 语法结构提供了遍历数组的简单方式.foreach 仅能够应用于数组和对象,如果尝试应用于其他数据类型的变量,或者未初始化的变量将发出错误信息.有两种语法: foreach (array_expression as $value) statement foreach (array_expression as $key => $value) statement 第一种格式遍历给定的 array_expression 数组.每次循环中,当前单元的值被赋给 $value 并且数组内部的指