JS-数组

数组是用于存储一组相关数据的集合,下标从0开始。可以通过字面量或Array构造函数创建数组,如`[1,2,3]`或`newArray(3)`。数组元素可以是任意类型,如字符串、数字等。可以使用下标访问元素,遍历数组通常用for循环。数组的push方法用于在末尾添加元素,unshift则在开头添加。文章还介绍了二维数组的概念和遍历方式。
摘要由CSDN通过智能技术生成

为什么要学习数组

之前学习的基本数据类型,都只能存储一个值。如果我们想存储班级中所有学生的姓名,这时候一个变量就无法胜任,那么数组就可以解决这个问题。

所谓数组就是将多个相关联的数据存放在一起,专业点说就是统一放在一个集合中。 那么这个集合我们就可以称之为数组

数组作用:存储一组数据,便于对这些数据进行统一管理。

js数组内可以存储任意类型的数据

定义数组(Array)

使用字面量[]来创建一个数组。

字面量其实就是指字面上所看到的值
// 创建一个空数组
var arr1 = []; 
// 创建一个包含3个元素的数组,数组里面的每个元素以逗号隔开
var arr2 = [1, 3, 4]; 
// 创建一个数组,存储四天天王
var users = ['郭富城','黎明','张学友','刘德华'];
​
console.log(users.length); // 4 获取数组元素个数

通过构造函数来创建数组

var arr = new Array(4) // 创建一个初始长度为4的数组
大多数情况还是推荐使用字面量来创建数组

数组元素及索引

什么是数组元素?

数组中的每一项!我们就把它们称之为数组元素,数组元素可以是任意的数据类型(字符串,整形,布尔、数组、对象…)

数组下标(索引)

数组中的每个元素都有其对应的序号,这个序号我们称之为是下标(索引)。

有了下标就可以访问某个数组元素。

好比你去超市买东西,把身上的东西暂存到储物柜中,买完之后,凭着储物柜的编号就可以取回来。

下标从0开始依次递增。 数组第1个元素下标为0, 数组第2个元素下标为1

数组第n个元素下标为n-1

依此类推。

通过数组下标获取数组元素,如果下标不存在,则返回undefined

数组变量名[下标]
// 功能:获取数组对应下标的值,如果下标不存在,则返回undefined。
var arr = ['老王','老李','老罗'];
console.log(arr[0]); // 老王
console.log(arr[1]); // 老李
console.log(arr[2]); // 老罗
console.log(arr[3]); // 这个数组的最大下标为2,不存3,因此返回undefined
提示:最大下标= 数组长度-1

遍历(循环)数组

所谓遍历,就是对数组的每一个元素都访问一次就叫遍历

for循环可以遍历数组

var stus = ['王宁', '黄骞', '王慧', '朱媛', '李雪敏', '凡凡']
for(var i = 0; i < stus.length; i++) {
    console.log(stus[i])
}

向数组中新增和修改元素

// 定义一个数组,存储线上同学姓名
var stus = ['王宁', '黄骞', '王慧', '朱媛', '李雪敏', '凡凡']
// 向数组尾部添加一个张三
// stus[6] = '张三'
// stus[7] = '蓓蓓'
// 有没有更好的办法直接向数组末尾添加元素
stus[stus.length] = '张三'
stus[stus.length] = '蓓蓓'
// 把下标为1的内容改为黄钱
stus[1] = '黄钱'
​
console.log(stus)
for (var i = 0; i < stus.length; i++) {
    console.log(stus[i])
}

二维数组

定义:如果数组中的某个元素又是一个数组,那么我们可以把此数组称之为二维数组。那么依此类推,还有三维数组和四维数组。

实际开发中基本不会超过三维数组,太深了会导致代码可读性差,后期难以维护。

使用for来遍历循环二维数组

var arr = [
    ['老王','九江','29'],
    ['老李','广州','34'],
    ['老罗','深圳','39'],
];
​
for(var i=0; i<arr.length; i++){
    // 打印每个元素的名字
    console.log(arr[i][0]);
}

数组内置函数push

push():将一个或多个元素添加到数组的末尾,并返回该数组的新长度。

unshift: 向数组头部添加一个或多个元素,并返回数组的新长度

函数:可以实现某个特定的功能。
当站在对象的角度去调用一个函数的时候,我们一般把函数称之为方法。

调用形式:

parseInt() // 函数
变量名.属性; // 如:arr.length 
变量名.方法名(); // 如:arr.push(数据)   人.吃饭()

数组push函数,向数组尾部新增元素:

var users = ['高圆圆', '范冰冰', '李冰冰', '韩冰冰']
 // users[users.length] = '王冰冰'
 // push:向数组尾部添加一个或多个元素,并返回数组的新长度
 users.push('王冰冰')
 users.push('王宝强')
 users.push('汪哥', '倩倩')
​
// unshift:向数组头部添加一个或多个元素,并返回数组的新长度
users.unshift('赵又廷')
users.unshift('廖帅', '张敏')
console.log(users);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

xiao_ming0425

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

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

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

打赏作者

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

抵扣说明:

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

余额充值