• 技术文章 >web前端 >js教程

    JS数组学习之一维和二维数组的创建和访问

    青灯夜游青灯夜游2021-08-17 12:15:59原创341
    在之前的文章《JS数组学习之清空全部元素的4种方法(代码详解)》中,我们删除全部数组元素--即清空数组的4种方法。下面继续JavaScript数组的学习,我们来聊聊一维数组、二维数组的创建和访问,并扩充一下简单聊聊多维数组。

    首先我们来看看一维数组是怎么创建和访问的。

    一维数组的创建和访问

    一维数组有两种创建方法:“数组直接量”和“Array()函数”。

    1、数组直接量 “[]

    1)我们可以直接使用“[]”来给一个变量赋值,“[]”中可以是空的,那么就是定义空数组:

    var a = [];  //空数组

    使用数组的length属性来获取数组长度,返回值会为0。

    console.log(a.length);

    1.png

    此时我们可以使用 数组名[下标]=值 的形式给空数组赋值

    a[0]=1;
    a[1]="hello";

    4.png

    数组下标不仅仅可以是数字,也可以为文本字符串,那么此时数组就是一个关联数组

    a["姓名"]="张三";
    a["年龄"]=23;

    4.png

    如果数组的下标值超出范围,如负数、浮点数、布尔值、对象或其他值,JavaScript 会自动把它转换为一个字符串,并定义为关联数组。

    2)也可以直接定义数组并初始化

    直接在“[]”中包含多个值列表,值之间用逗号分隔即可。

    var a = [1, 2, 3];  //包含具体元素的数组

    使用数组的length属性来获取数组长度,返回值就是具体定义的数组元素数目。

    2.png

    2、使用new Array()构造数组

    1)如果直接调用 Array() 函数,不传递参数,可以创建一个空数组。

    var a = new Array();  //空数组

    使用数组的length属性来获取数组长度,返回值会为0。

    3.png

    2)如果调用Array() 函数时,传递多个值(值之间用逗号分隔),可以创建一个实数组。

    var a = new Array(1,2,3);

    3)如果调用Array() 函数时,只传递一个数值参数,那么就表示只定义了数组的长度,即包含元素的个数;数组元素为空,每个元素的值默认值为 undefined。(数组中元素值没有定义,在语法上两个逗号之间没有任何值的元素,被称为空位元素)

    var a = new Array(3);

    6.png

    像这种包含一个或多个空位元素的数组,也被称为空位数组。

    var a = [1, , 2];
    var a = [1, 2, 3];
    delete a[1];

    也可产生空位元素,形成空位数组。

    3、访问数组

    访问数组就是访问数组元素。我们可以使用 数组名[下标表达式] 的形式来进行访问,读写数组。

    注:下标表达式是值为非负整数的表达式。

    例如上文中的

    delete a[1]

    就是使用delete关键字删除a数组中下标为1的元素(即删除第二个元素)。

    还有:

    var a = [];  //空数组
    a[0]=1;
    a[2]="hello";

    就是分别为a数组中下标为0和2的元素赋值,下标为1的元素的值没有赋值则为undefined。我们想要输出指定数组元素时,也可使用这种形式

    console.log(a[0]);  //读取第一个元素,返回值为1
    console.log(a[1]);  //读取第二个元素,返回值为undefined
    console.log(a[2]);  //读取第三个元素,返回值为hello

    7.png

    二维数组的创建和访问

    JavaScript 并没有直接支持二维数组,但是可以设置数组元素的值等于数组,这样就能模拟二维数组的结构。

    1、定义二维数组

    定义二维数组的方法1:

    var a = [];
    a[0,0] = 1;
    a[0,1] = 2;
    a[1,0] = 3;
    a[1,1] = 4;

    定义二维数组的方法2:

    var a = [  //定义二维数组
        [1.1, 1.2],
        [2.1, 2.2]
    ];

    8.png

    定义二维数组的方法3:

    var a = new Array(
    [1.1, 1.2],
    [2.1, 2.2]);  //定义二维数组

    9.png

    按照这种思想,如果二维数组中每个元素的值也为数组,则可以模拟三维数组,以此类推,通过数组嵌套的形式可以定义多维数组。

    2、访问二维数组

    访问二维数组甚至三维数组、多维数组的方法,和访问一维数组的方法一样,都是使用中括号进行访问:

    数组名[下标表达式1] [下标表达式2]
    
    数组名[下标表达式1] [下标表达式2] [下标表达式3]
    
    ...
    
    数组名[下标表达式1] [下标表达式2] [下标表达式3]...[下标表达式N]

    更高维度的数组以此类推。

    好了,就说到这里了,有需要的可以看:javascript高级教程

    以上就是JS数组学习之一维和二维数组的创建和访问的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    上一篇:深入浅析React Native与web的基本交互(附代码) 下一篇:JS数组学习之如何在头部或尾部插入元素?
    大前端线上培训班

    相关文章推荐

    • js数组中的元素如何实现累加效果• 用JavaScript计算一个正整数的因数• 深入浅析JavaScript中的回调函数• 如何通过js返回大于指定数字的数组元素

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网