Java实习日记(8)

Question:JSON对象的长度以及遍历

  • 概念
    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,便于理解、阅读和编写,解析和生成也很方便。

  • 结构
    JSON简单说就是JavaScript中的对象和数组,所以这两种结构就是对象和数组两种结构,通过这两种结构可以表示各种复杂的结构。
    1、对象:在JS中使用“{}”括起来的内容,其数据结构为 {key:value, key:value, …}的键值对;在面向对象的语言中(如JAVA),key为对象的属性,value为对应的属性值(俗称K-V对),所以很容易理解,取值方法为 对象.key 获取属性值,这个属性值的类型可以是 数字、字符串、数组、对象几种。
    2、数组:在JS中是中括号“[]”括起来的内容,其数据结构为 [“Java”, “C” ,”C++” ,…],取值方式和所有语言中一样,使用索引获取,字段值的类型可以是 数字、字符串、数组、对象几种。
    例如:

var json = {
    "ID": "110",
    "data": [{
        "name": "菜鸟教程",
        "url": "www.runoob.com"
    }, {
        "name": "google",
        "url": "www.google.com"
    }, {
        "name": "微博",
        "url": "www.weibo.com"
    }]
}
  • JSON对象长度
    我们都知道数组是有length属性的,所以如果JSON对象含有数组结构,则可以使用length属性;例如上面举的例子,我们可以下面方式获取json中data数组的长度:
var size = json.data.length;

如果JSON对象中没有数组结构,则无法使用length属性。例如:

var json = {
    "name": "菜鸟教程",
    "url": "www.runoob.com"
}

此时使用var size = json.length;就无法获取JSON对象的长度。

  • JSON对象遍历
    严格来讲,JSON对象就是没有length属性;即使说有,也只是JSON对象中的数组有length属性。如果想要得到json的长度,可以通过遍历获取:
function getJsonLength (jsonObject) {
    var length = 0;
    for (var item in jsonObject) {
        length++;
    }
    return length;
}

参考链接:
http://caibaojian.com/json-length.html
https://blog.csdn.net/c1113072394/article/details/75330815
https://blog.csdn.net/chenlong220192/article/details/46622031

猜你喜欢

转载自blog.csdn.net/u012187452/article/details/80100957
今日推荐