首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JS数组

为什么要学习数组

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

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

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

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

定义数组(Array)

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

字面量其实就是指字面上所看到的值

// 创建一个空数组

var arr1 = [];

// 创建一个包含3个元素的数组,数组里面的每个元素以逗号隔开

var arr2 = [1, 3, 4];

// 创建一个数组,存储四天天王

var users = ['郭富城','黎明','张学友','刘德华'];

console.log(users.length); // 4 获取数组元素个数

通过构造函数来创建数组

var arr = new Array(4) // 创建一个初始长度为4的数组

大多数情况还是推荐使用字面量来创建数组

数组元素及索引

什么是数组元素?

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

数组下标(索引)

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

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

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

下标从开始依次递增。数组第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

   // 打印每个元素的名字

console.log(arr[i][0]);

}

数组内置函数push

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

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

函数:可以实现某个特定的功能。

当站在对象的角度去调用一个函数的时候,我们一般把函数称之为方法。

调用形式:

parseInt() // 函数

变量名.属性; // 如:arr.length

变量名.方法名(); // 如:arr.push(数据)   人.吃饭()

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

var users = ['高圆圆', '范冰冰', '李冰冰', '韩冰冰']

// users[users.length] = '王冰冰'

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

users.push('王冰冰')

users.push('王宝强')

users.push('李四', '倩倩')

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

users.unshift('赵又廷')

users.unshift('廖帅', '张敏')

console.log(users);

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230526A0004D00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券