【继续学习-JavaScript数组一】

JavaScript数组学习笔记

前言: 本周学习了JavaScript中的数组,在学习之前也在其他编程语言中学习过数组,总得来说数组还是编程语言中相对比较重要的知识点。

1.数组的概念

思考:之前我们学习的数据类型,变量只能存储一个值。
如果我们想存储班级中所有学生的姓名,那么该如何存储呢?

思考分析:我们可以使用变量一个个去存储全班同学的姓名,这种方法也能完成效果,但是从实际开发的角度,并不建议这样做,效率太低了,也不利于程序后期的维护。因此我们就要使用到数组(Array)。

1.1什么是数组呢?

数组是指一组数据的集合,有点类似数学中的集合概念,其中的每个数据被称作元素,数组是一种用来存储一系列相同类型的元素的容器,数组是一种将一组数据存储在单个变量名下的优雅方式。

//普通变量一次只能存储一个值
var  num = 10;
//数组一次可以存储多个值
var arr = [1,2,3,4,5];

2.数组创建

2.1数组创建的方式

JS中创建数组有两种方式:

  • 利用 new 关键字 创建数组(原型创建)
  • 利用数组字面量创建数组(直接创建)

2.2利用new创建数组

var 数组名 = new Array();
var arr= new Array(); //创建一个空数组

注意:Array(),A要大写

2.3利用数组字面量创建数组

//1. 使用数组字面量方式创建空的数组
var 数组名 = [];
//2. 使用数组字面量方式创建带初始值的数组
var 数组名 = ['我是''JavaScript''数组''星辰'];
  • 数组的字面量是方括号“[]”
  • 声明并赋值称为数组的初始化
  • 此外在创建数组时尽量不要一开始就规定长度,
    如:var 数组名=new Array(5)
  • 这种字面量方式也是我们以后使用最多的方式

2.4数组元素的类型

数组中可以存放任意类型的数据,例如字符串,数字,布尔值等。

var arrnum = ['星辰',20,true,28.9]

3.数组及变量存储方式

我们知道用new创建一个数组就是在内存中开辟一个空间,那么具体是怎么操作的呢,这就涉及到栈内存和堆内存了,简单来说:除了局部变量,其他的全都存在堆中。根据变量的数据类型,分为以下两种情况:

  • 如果是基础类型,那栈中存的是数据本身。
  • 如果是对象类型,那栈中存的是堆中对象的引用。
    在这里插入图片描述
    关于这块我自己也还是懵懂😂就不多写了,

4.获取数组中的元素

4.1数组的索引

  • 索引(下标):用来访问数组元素的序号
    (数组下标从0开始)。

    var arr = [‘星辰’,小白,‘前端’,‘学习’]
    索引号:0 1 2 3

  • 数组可以通过索引来访问、设置、修改对应的数组元素,我们可以通过“数组名[索引]”的形式来获取数组中的元素。 这里的访问就是获取得到的意思.
    在这里插入图片描述

4.2遍历数组

  • 思考:数组中的每一项我们怎么取出来?

答:可以通过“数组名[索引号]”的方式一项项的取出来。

var arr ['星辰','前端','学习']
console.log(arr[0]) //星辰
console.log(arr[1])//前端
console.log(arr[2])//学习
  • 再思考:怎么把数组里面的元素全部取出来?

规律:
从代码中我们可以发现,从数组中取出每一个元素时,代码是重复的,有所不一样的是索引值在递增
这好像跟前面学习的循环的使用场景一致,答案就是使用循环

遍历:就是把数组中的每个元素从头到尾都访问一次(类似我们每天早上学生的点名)。
我们可以通过 for 循环索引遍历数组中的每一项

var arrnum = [2021,20,10,34];	
	for(var n=0;n<arrnum.length;n++){
            console.log(arrnum[n])
        }

4.3数组的长度

使用"数组名.length"可以访问数组元素的数量(数组长度)
在这里插入图片描述
注意:

  • 此处数组长度是数组元素的个数,不要和数组的下标混淆。
  • .length的好处就是当我们数组里面的元素个数发生了变化,这个length属性会跟着一起变化。

4.4数组中新增元素

通过修改length长度新增数组元素

  • 可以通过修改length长度来实现数组扩容的目的的
  • length 属性是可读写的

在这里插入图片描述
其中索引号是 4,5,6 的空间没有给值,就是声明变量未给值,默认值就是 undefined。
在这里插入图片描述

4.4.1通过修改数组索引新增数组元素

  • 可以通过修改数组索引的方式追加数组元素
  • 不能直接给数组名赋值,否则会覆盖掉以前的数据

在这里插入图片描述
这种方式也是我们最常用的一种方式。

5.数组案例

5.1 求总分 :依次的将数组中的元素求和

要求:在控制台同时显示原数组元素和求和后的结果。

  • 案例分析
    1.声明一个变量sum用来存储求和后的结果。
    2.遍历数组中每个元素,并把每次遍历的元素相加的值赋给sum
    3.控制台打印数组及结果。

实现代码:

 var sum = 0;
        var arr = [50,30,85,90,71,25]
        for(var n=0;n<arr.length;n++){
            arr[n] 
            sum=sum+arr[n]
        }
        console.log(arr)
        console.log("数组arr求和后的值是:"+sum)

运行结果:
在这里插入图片描述
5.2 求数组中元素的最大值

  • 案例分析
    1.声明一个变量max用来存储比较后的最大值。
    2.遍历数组中每个元素,并把每次遍历的元素两两最大的的值赋给max
    3.控制台打印数组及结果。
    var num=[70,85,98,50,95,55,89]
        var max=num[0]
        for(var n=1;n<num.length;n++){
            if(num[n]>max){
                max=num[n]
            }
        }
        console.log(num)
        console.log("数组中的最大值是"+max)

运行结果:
在这里插入图片描述

结语:

以上就是本周JavaScript数组学习的笔记,并没有写完还有排序、删除数组重复元素等内容……等下周学完一起补上吧💕💕💕

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

星辰♚

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值