前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一篇文章带你了解JavaScript json 数组

一篇文章带你了解JavaScript json 数组

作者头像
前端进阶者
发布2021-01-22 10:34:30
6540
发布2021-01-22 10:34:30
举报
文章被收录于专栏:前端进阶交流前端进阶交流

简单说,所谓对象,就是一种无序的数据集合,由若干个“键值对”(key-value)构成。

一、数组作为JSON对象

代码语言:javascript
复制
[ "Ford", "BMW", "Fiat" ]

在JSON中的数组,几乎和在JavaScript中数组相同。

在JSON中,数组的值必须是字符串,数字、对象、数组、布尔值或空.

JavaScript中,数组的值可以是以上所有,再加上其他任何有效的JavaScript表达式,包括函数、日期、和undefined。


二、JSON对象中的数组

数组可以是对象属性的值:

代码语言:javascript
复制
{
"name":"John",
"age":30,
"cars":[ "Ford", "BMW", "Fiat" ]
}
1. 访问数组的值

使用索引号访问数组值:

代码语言:javascript
复制
x = myObj.cars[0];

完整代码:

代码语言:javascript
复制
<!DOCTYPE html>
<html lang="en">

    <head>
        <meta charset="UTF-8">
        <title>项目</title>
    </head>

    <body style="background-color: aqua;">

        <p id="demo"></p>

        <script>
            myObj = {
                "name": "John",
                "age": 30,
                "cars": ["Ford", "BMW", "Fiat"]
            }
            x = myObj.cars[0];
            document.getElementById("demo").innerHTML = x;
</script>

    </body>

</html>
2. 遍历数组

你可以使用for-in循环遍历数组:

代码语言:javascript
复制
for (i in myObj.cars) {
    x += myObj.cars[i];
}

或者可以使用for循环:

代码语言:javascript
复制
for (i = 0; i < myObj.cars.length; i++) {
    x += myObj.cars[i];
}

三、JSON对象中的嵌套数组

数组值也可以是另一个数组,甚至另一个JSON对象:

代码语言:javascript
复制
myObj = {
    "name":"John",
    "age":30,
    "cars": [
        { "name":"Ford", "models":[ "Fiesta", "Focus", "Mustang" ] },
        { "name":"BMW", "models":[ "320", "X3", "X5" ] },
        { "name":"Fiat", "models":[ "500", "Panda" ] }
    ]
 }

访问数组内部的数组, 使用for-in loop循环:

代码语言:javascript
复制
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>项目</title>
</head>
<body style="background-color: aqua;">

  <p>Looping through arrays inside arrays.</p>

  <p id="demo"></p>
  <script>

    var myObj, i, j, x = "";
    myObj = {
        "name":"John",
        "age":30,
        "cars": [
            { "name":"Ford", "models":[ "Fiesta", "Focus", "Mustang" ] },
            { "name":"BMW", "models":[ "320", "X3", "X5" ] },
            { "name":"Fiat", "models":[ "500", "Panda" ] }
        ]
    }
/*访问数组内部的数组, 使用for-in loop循环*/
    for (i in myObj.cars) {
        x += "<h1>" + myObj.cars[i].name + "</h1>";
        for (j in myObj.cars[i].models) {
            x += myObj.cars[i].models[j] + "<br>";
        }
    }

    document.getElementById("demo").innerHTML = x;
</script>
</body>
</html>   
1. 修改数组值

使用索引号修改数组:

代码语言:javascript
复制
myObj.cars[1] = "Mercedes";
代码语言:javascript
复制
完整代码:
代码语言:javascript
复制
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>项目</title>
</head>
<body>

  <p id="demo"></p>

<script>

    var myObj, i, x = "";
    myObj = {
        "name":"John",
        "age":30,
        "cars":[ "Ford", "BMW", "Fiat" ]
    };
    myObj.cars[1] = "Mercedes";

    for (i in myObj.cars) {
        x += myObj.cars[i] + "<br>";
    }

    document.getElementById("demo").innerHTML = x;
</script>


</body>
</html>
2. 删除数组中的项目

使用delete关键字从数组中删除:

代码语言:javascript
复制
delete myObj.cars[1];

四、总结

本文基于JavaScript基础,讲解了JSON数组中,如何以数组作为JSON的对象 ,对象中如何去嵌套数组,常见的修改,删除数组,都做了详细的讲解。

希望大家可以根据文章的内容,积极尝试,有时候看到别人实现起来很简单。但是到自己动手实现的时候,总会有各种各样的问题,切勿眼高手低,勤动手,才可以理解的更加深刻。

代码很简单,希望能够帮助你。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-01-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 前端进阶学习交流 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、数组作为JSON对象
  • 二、JSON对象中的数组
    • 1. 访问数组的值
      • 2. 遍历数组
      • 三、JSON对象中的嵌套数组
        • 1. 修改数组值
          • 2. 删除数组中的项目
          • 四、总结
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档