〖大前端 - 基础入门三大核心之JS篇㉓〗- JavaScript 的「数组」

  • 作者:不渴望力量的哈士奇(哈哥),十余年工作经验, 跨域学习者,从事过全栈研发、产品经理等工作,目前任某金融品类App负责人。
  • 荣誉:2022年度博客之星Top4博客专家认证、全栈领域优质创作者、新星计划导师“星荐官共赢计划” 发起人
  • 现象级专栏《白宝书系列》作者文章知识点浅显易懂且不失深度TFS-CLUB社区创立者旨在以“赋能 共赢”推动共建技术人成长共同体



接下来阶段,我们将进入到 JavaScript 数组的相关知识学习阶段,该章节我们将要学习一下关于 “数组” 的一些基本知识点。


🌟 数组简介

数组(Array),是用来存储一组相关的值,从而方便进行求和、计算平均数、逐项遍历等操作

数组是编成语言中复杂数据类型的一种。每一种编成语言都会有“数组”,是一种非常重要的数据结构

数组类型的变量在定义时通常以Arr结尾

下面举个例子来理解“数组”:

编程时,我们经常遇到的“一组数值”的情况,比如一个班10个学生的考试成绩。如果我们用简单数据类型去定义的话,需要定义20个不同的变量,不仅麻烦,而且如果要计算这20个变量的和或者平均分,还不能用for循环,因为for循环时没办法对“零散”的变量进行处理的。此时就要用到“数组”。



🌟 数组的定义方法

  • 定义数组 —— 方法一:

    直接用方括号[]来定义数组

    括号中每一”项“用逗号隔开

    数组的”长度“就是数组中”项“的个数。


  • 定义数组 —— 方法二:

    使用new关键字来调用内置构造函数Array()


  • 定义数组 —— 方法三:

    内置构造函数Array()中直接书写一个数字n,表示定义一个长度为n,项都是undefined的数组

    如下就表示,定义了一个长度是4,项都是undefined的数组:


下面在控制面板中输出的数组变量:


因为方法一相比来说比较简单,所以方法一也是最常用的。


🌟 数组类型的检测

用typeof检测数组的结果是object,没办法区分这个变量是数组还是对象

可以用Array.isArray()方法来检测数组



🌟 数组的“项”和“下标”

数组的每一项都有下标从0开始

下标的作用:可以通过下标来访问数组中的每一项;


示例代码:

var arr = ['A', 'B', 'C', 'D'];
//打印数组中下标为1的项:
console.log(arr[1]);   // B
//打印数组中下标为3的项:
console.log(arr[3]);   // D

下标"越界"

下标”越界“,即访问的下标对应的项不存在则会返回undefined不会报错

其他编成语言遇到”下标越界“的情况或多或少都会报错。


🌟 更改数组项

数组并不是只读的,我们可以修改它其中任何项的值

更改方法:直接利用下标访问到该项,然后更改赋值

如果更改的数学组项超过了length - 1,则会创造这项

示例代码:

var arr = [1, 5, 2, 6];

//更改数组项
arr[0] = 9;     //将下标为0的项改为9
arr[3]++;      //将下标为3的项加1
console.log(arr);
arr[6] = 4;   //更改的下标6超过了数组中的最大下标,会直接创造这项
console.log(arr);

🌟 数组的长度

数组的length属性表示长度

数组的最后一项的下标是数组的长度减1

示例代码:

var arr = ['A', 'B', 'C', 'D'];
//打印数组的长度
console.log(arr.length);
//打印数组的最后一项
console.log(arr[arr.length - 1]);


🌟 数组的遍历

  • 数组的最大优点就是方便遍历

  • 遍历数组,其实就是循环变量是数组的下标,有了下标就可以访问每项的值了

  • for循环中指定的结束范围应该是长度 - 1,即最后一个下标

下面我们用数组遍历的方式,将班级的考试成绩遍历出来,求和,求平均分。

代码如下:

var scoreArr = [99, 100, 98, 98, 86, 94, 89, 100, 99, 91];
var sum = 0;
var avg = 0;

//遍历数组
for (var i = 0; i < scoreArr.length; i++) {
    console.log("第" + (i + 1) + "位同学的分数:" + scoreArr[i]);
    sum += scoreArr[i];
}
console.log('分数总合为:' + sum);
console.log('平均分为:' + (sum / 10));
评论 74
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

哈哥撩编程

多点...少点...多少给点?

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值