(代码均以js代码示例)

1、可以使用 for-in 来循环对象的属性,使用中括号([])来访问属性的值:

  这中方法便于一些在不确定有属性的情况下使用。

var myObj = { "name":"runoob", "alexa":10000, "site":null };
for (x in myObj)
{
0  document.getElementById("demo").innerHTML += x + "<br>";
  document.getElementById("demo").innerHTML += myObj[x] + "<br>";
}

2、当数组作为JSON的对象时,可以使用 for-in 来访问JSON中的数组:

var myObj=
{
"name":"网站",
"num":3,
"sites":[ "Google", "Runoob", "Taobao" ]
} for (i in myObj.sites)
{
  x += myObj.sites[i] + "<br>";
}
//也可以使用 for 循环:
for (i = 0; i < myObj.sites.length; i++)
{
  x += myObj.sites[i] + "<br>";
}

3、嵌套 JSON 对象中的数组

JSON 对象中数组可以包含另外一个数组,或者另外一个 JSON 对象:

var myObj =
{
  "name":"网站",
  "num":3,
  "sites": [
     { "name":"Google", "info":[ "Android", "Google 搜索", "Google 翻译" ] },
     { "name":"Runoob", "info":[ "菜鸟教程", "菜鸟工具", "菜鸟微信" ] },
     { "name":"Taobao", "info":[ "淘宝", "网购" ] }
  ]
} for (i in myObj.sites)
{
x += "<h1>" + myObj.sites[i].name + "</h1>";
for (j in myObj.sites[i].info)
{
x += myObj.sites[i].info[j] + "<br>";
}
}
 
注意:数组遍历的时候,1中for-in 遍历的是对象,其数据类型为JToken;2/3中for-in遍历的是数组的索引值,应该注意索引的数据类型。
 

JSON for-in 遍历的更多相关文章

  1. java 字符串转成 json 数组并且遍历

    当需要把一串字符串转成一个json 数组 ,并遍历其中的内容时. 首先要导入 net.sf.json.JSONArray和net.sf.json.JSONObject 两个jar 包 String s ...

  2. C# JToken类的使用,实现解析动态json数据、遍历、查找

    在原来解析json数据是,一般都是用反序列化来实现json数据的解读,这需要首先知道json数据的结构并且建立相应的类才能反序列化,一旦遇到动态的json数据,这种方法就不使用. 为了解决动态解析js ...

  3. Json格式循环遍历,Json数组循环遍历

    Json格式数据如何遍历,这里我们可以用for..in实现 例如最简单的json格式 , 'handsome' : 'yes' }; for( var key in json1 ){ console. ...

  4. 转载:jquery 对 Json 的各种遍历

    概述 JSON(javascript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式.同时,JSON是 JavaScript 原生格式 ...

  5. python json格式参数遍历所有key、value 及替换key对于的value

    1.对于接口自动化测试,一般接口以json形式发送返回,往往我们就需要遍历json文件中所有key,value以及修改替换key对于的value. 例如json发送/接收的文件: SendRegist ...

  6. 多种JSON格式及遍历方式

    /*数组*/ var arr = [["name", "value"], ["name1", "value1"]]; v ...

  7. 对json数据的遍历

    json格式变化多样,可嵌套好几层,这里只记录了一些遍历方法,具体数据格式具体分析~ "data1": { "key1": [ {"name" ...

  8. js声明json数据,打印json数据,遍历json数据

    1.js声明json数据: 2.打印json数据: 3.遍历json数据 //声明JSON var json = {}; json.a = 1; //第一种赋值方式(仿对象型) json['b'] = ...

  9. jackson中JSON字符串节点遍历和修改

    有些场景下,在实现一些基础服务和拦截器的时候,我们可能需要在不知道JSON字符串所属对象类型的情况下,对JSON字符串中的某些属性进行遍历和修改,比如,设置或查询一些报文头字段. 在jackson中, ...

  10. [转]jquery 对 Json 的各种遍历

    原文地址:http://caibaojian.com/jquery-each-json.html 概述 JSON(javascript Object Notation) 是一种轻量级的数据交换格式,采 ...

随机推荐

  1. layui 的 GitHub 及 Gitee (码云) 仓库

    GitHub: https://github.com/sentsin/layui/ Gitee:https://gitee.com/sentsin/layui

  2. 【Teradata】数据库初始化(sysinit和dip工具)

    1.删除数据库对象 (1)使用root用户登录数据库节点 arcmain .LOGON 127.0.0.1/dbc,dbc_password; (2)清理所有数据库对象及数据 DELETE DATAB ...

  3. docker1.13.1的安装与卸载及mysql5.5安装实例

    docker中国官方地址:https://www.docker-cn.com/ 您可以使用以下命令直接从该镜像加速地址进行拉取: $ docker pull registry.docker-cn.co ...

  4. DefaultNamespaceHandlerResolver中handlerMappings如何初始化

    前言:最近一直在看Spring源码,今天在调试的时候发现一个小问题:在注册bean时,需要初始化spring默认命名空间处理器,具体在DefaultNamespaceHandlerResolver中实 ...

  5. python之常用模块(续)

    time模块 random模块 sys模块 os模块 序列化模块  time模块 有三种方式表示 在Python中,通常有三种方式来表示时间:时间戳.元组(struct_time).格式化的时间字符串 ...

  6. leetcode 74. Search a 2D Matrix 、240. Search a 2D Matrix II

    74. Search a 2D Matrix 整个二维数组是有序排列的,可以把这个想象成一个有序的一维数组,然后用二分找中间值就好了. 这个时候需要将全部的长度转换为相应的坐标,/col获得x坐标,% ...

  7. layer 查看图片

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  8. MySQL笔记--注意

    replace into 和 insert into..... on duplicate key update的异同 同:1. 当key不存在时,两者相同,都是插入一条数据2. key存在时,执行两者 ...

  9. IntelliJ IDEA 破解方法

    2017版破解方法: 1. 到网站http://idea.lanyus.com/,按要求修改电脑HOST,获取注册码: 使用前请将“0.0.0.0 account.jetbrains.com”添加到h ...

  10. bootstrap 失效的原因

    首先必须对着官方文档的模板来写: https://getbootstrap.com/docs/4.3/getting-started/introduction/ 然后: 这里必须加上 rel=&quo ...