天天看點

JSON對象超詳細講解|對象、循環對象、嵌套對象、修改和删除對象屬性

JSON對象超詳細講解|對象、循環對象、嵌套對象、修改和删除對象屬性

1.JSON對象

JSON 對象使用在大括号{}中書寫。對象可以包含多個 key/value(鍵/值) 對。

key 必須是字元串,value 可以是合法的 JSON 資料類型(字元串, 數字, 對象, 數組, 布爾值或 null)。key 和 value 中使用冒号(:)分割。每個 key/value 對使用逗号(,)分割。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>對象詳解</title>
</head>
<body>

<script>
    // 對象采用鍵值對
    var obj = {
        "name" : "Alan_Lowe",
        "age" : 20,
        "gender" : "male"
    }
    // 通路
    var x = obj.name;
    var y = obj["age"];
    document.write(x + " " + y);
</script>

</body>
</html>
           
JSON對象超詳細講解|對象、循環對象、嵌套對象、修改和删除對象屬性

2.循環對象

使用for-in可以通路對象的屬性,類似于C++STL的auto x : s

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>對象詳解</title>
</head>
<body>

<script>
    // 對象采用鍵值對
    var obj = {
        "name" : "Alan_Lowe",
        "age" : 20,
        "gender" : "male"
    }
    // 循環對象,使用for-in
    for(x in obj){
        document.write(obj[x] + "<br>");
    }
</script>

</body>
</html>
           
JSON對象超詳細講解|對象、循環對象、嵌套對象、修改和删除對象屬性

3.嵌套對象

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>對象詳解</title>
</head>
<body>

<script>
    // 嵌套對象,即對象内放對象,和對象數組類似
    var obj = {
        "name" : "Alan_Lowe",
        "age" : 20,
        "gender" : "male",
        "hobby" : {
            "hobby1" : "籃球",
            "hobby2" : "足球"
        }
    }
    var x = obj.hobby["hobby1"];
    document.write(x);
</script>

</body>
</html>
           
JSON對象超詳細講解|對象、循環對象、嵌套對象、修改和删除對象屬性

4.修改值

直接等号修改:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>對象詳解</title>
</head>
<body>

<script>
    // 修改值對象屬性
    var obj = {
        "name" : "Alan_Lowe",
        "age" : 20
    }
    obj["name"] = "Alan";
    document.write(obj.name);
</script>

</body>
</html>
           
JSON對象超詳細講解|對象、循環對象、嵌套對象、修改和删除對象屬性

5.删除對象屬性

使用delete:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>對象詳解</title>
</head>
<body>

<script>
    // 删除對象屬性
    var obj = {
        "name" : "Alan",
        "age" : 20
    }
    for(x in obj){
        document.write(obj[x] + " ");
    }
    document.write("<br>");
    delete obj.name;
    for(x in obj){
        document.write(obj[x] + " ");
    }
</script>

</body>
</html>
           
JSON對象超詳細講解|對象、循環對象、嵌套對象、修改和删除對象屬性

繼續閱讀