JSON for-in 遍历

时间:2023-03-09 02:22:05
JSON for-in 遍历

(代码均以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遍历的是数组的索引值,应该注意索引的数据类型。