第三章 JavaScript数组

本文详细介绍了JavaScript数组的各个方面,包括初识数组、创建数组、基本操作、二维数组操作、数组排序以及常见数组方法。重点讲解了如何创建、访问、遍历、修改和删除数组元素,以及解构赋值的用法。此外,还探讨了冒泡排序、插入排序等排序算法,并介绍了栈和队列方法、检索方法,以及如何将数组转换为字符串。最后,通过实例解析了猴子选大王的游戏规则,展示了如何利用数组解决实际问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、初识数组

1、数组构成:数组由一个或多个数组元素组成的,各元素之间使用逗号“,”分割。

数组元素:每个数组元素由“下标”和“值”构成。

下标:又称索引,以数字表示,默认从0开始依次递增,用于识别元素。

值:元素的内容,可以是任意类型的数据,如数值型、字符型、数组、对象等。

数组还可以根据维数划分为一维数组、二维数组、三维数组等多维数组。

一维数组:就是指数组的“值”是非数组类型的数据,如上图。

二维数组:是指数组元素的“值”是一个一维数组,如下图。

多维数组:当一个数组的值又是一个数组时,就可以形成多维数组。它通常用于描述一些信息。

二、创建数组

1、使用Array对象创建数组

实例化Array对象的方式创建数组,是通过new关键字实现的。

    // 元素值类型为字符串
    var area = new Array('qwq', 'owo', 'TvT');
    // 元素值类型为数值型
    var score = new Array(56, 68, 98, 44);
    // 元素值类型为混合型
    var mix = new Array(123, 'abc', null, true, undefined);
    // 空数组
    var arr1 = new Array();   或    var arr2 = new Array;

2、使用“[]”创建数组

直接法“[]”Array()对象的使用方式类似,只需将new Array()替换为[]即可。

    var weather = ['qwq', 'TvT',]; // 相当于:new Array('qwq', 'TvT',)
    var empty = [];                          // 相当于:new Array

在创建数组时,最后一个元素后的逗号可以存在,也可以省略。

直接法“[]”Array()对象在创建数组时的区别在于,直接法“[]”可以创建含有空存储位置的数组,而Array()对象不可以。

三、数组的基本操作

1、获取数组长度

Array对象提供的length属性可以获取数组的长度,其值为数组元素最大下标加1

    var weather = ['qwq', 'owo', 'TvT',];
    var empty = ['a', , , , 'e', 'f',];
    console.log(weather.length);    // 控制台输出 3
    console.log(empty.length);  // 控制台输出 6

数组empty中没有值的数组元素会占用空的存储位置。

因此,数组的下标依然会递增。从而empty调用length属性最后的输出结果即为6

数组的length属性不仅可以用于获取数组长度,还可以修改数组长度。

在利用length属性指定数组长度时,有以下是三种情况:

(1)设置的length>原数组长度

length的值大于数组中原来的元素个数,则没有值的数组元素会占用空存储位置。

    var qwq = [];
    qwq.length = 5;
    console.log(qwq);      // 输出结果:(5) [empty × 5]

    var owo = [1, 2, 3];
    owo.length = 4;
    console.log(owo);      // 输出结果:(4) [1, 2, 3, empty]

(2)设置的length=原数组长度

length的值等于数组中原来的元素个数,数组长度不变。

    var ovo = ['a', 'b'];
    ovo.length = 2;
    console.log(ovo);      // 输出结果:(2) ["a", "b"]

(3)设置的length<原数组长度

length的值小于数组中原来的元素个数,多余的数组元素将会被舍弃。

    var face = ['qwq', 'owo', 'tut', 'TvT', 'pwp'];
    face.length = 3;
    console.log(face);      // 输出结果:(3) ['qwq', 'owo', 'tut']

除此之外,在利用Array对象方式创建数组时,也可以指定数组的长度。

    var face = new Array(3);
    console.log(face);      // 输出结果:(3) [empty × 3]

注意:JavaScript中不论何种方式指定数组长度后,并不影响继续为数组添加元素,同时数组的length属性值会发生相应的改变。

2、访问数组元素

(1)直接访问数组名

    var face = ['qwq', 'owo', 'tut', 'TvT', 'pwp'];
    console.log(face);

2)使用数组加下标访问

    var face = ['qwq', 'owo', 'tut', 'TvT', 'pwp'];
    console.log(face[2]);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值