上一节我们详细讲解了JS中的Date对象,本节我们将学习JS中的Array(数组)对象。

在JS中,数组是一种特殊的对象,用于存储多个有序的值。你可以通过索引访问数组中的特定元素,例如arr[0]获取第一个元素,arr[1]获取第二个元素等。

数组

例如,如果我们有一个包含一些数字的数组,我们可以像这样使用它:

let numbers = [1, 2, 3, 4, 5];
console.log(numbers[0]); // 输出:1
console.log(numbers[2]); // 输出:3

值得注意的是,JS中数组存储的元素可以是多种类型,比如我们可以同时在一个数组里存储字符串、布尔值、数字和对象等

// 创建Dotcpp用户
const dotcpp_user = {
 nickName: "dotcpp_user",
 signature:"学习使人进步",
 grade:100,
 degree:'P1',
  greet: function() {
    return `你好,我是${this.nickName}`;//此处this指向调用该方法的对象
  }
};
const arr=['Dotcpp编程',true,0,dotcpp_user]
for(let i=0;i<arr.length;++i)console.log(arr[i]);
//依次打印
//Dotcpp编程
//true
//0
//{nickName: 'dotcpp_user', signature: '学习使人进步', grade: 100, degree: 'P1', greet: ƒ}

JS中的Array对象是一个特殊类型的对象,用于存储一组有序的元素。它提供了一些方法来操作数组,如添加、删除、查找和修改元素。下面我们通过一张表格来总览其常用方法和属性。

基础操作                                                        
push(element)末尾添加元素
pop()删除末尾元素
shift()删除开头元素
unshift(element)开头添加元素
concat(array)合并数组
slice(start, end)截取数组片段
splice(start, count, items)删除/插入元素
搜索查找
indexOf(element)查找元素位置
includes(element)检查是否包含
find(callback)查找满足条件元素
findIndex(callback)查找元素索引
迭代处理
forEach(callback)遍历数组
map(callback)映射新数组
filter(callback)过滤数组
reduce(callback)累计计算
其他常用
join(separator)数组转字符串
sort()排序
reverse()反转
length数组长度

下面我们展示一些基础的操作,包括数组的增删改查:

const num=[1,2,3,4,5]
/* 增 */
num.push(6);
console.log(num);//尾增-[1,2,3,4,5,6]
num.unshift(0);
console.log(num);//头增-[0,1,2,3,4,5,6]
/* 删 */
num.pop();
console.log(num);//尾删-[0,1,2,3,4,5]
num.shift();
console.log(num);//头删-[1,2,3,4,5]
/* 查+改 */
console.log(num[0]);//1
num[0]=0,num[4]=0;
console.log(num);//[0,2,3,4,0]

如何对数组进行迭代呢?我们可以使用这些方法来迭代数组:

函数功能返回值
forEach(callback)对每个元素执行函数undefined
map(callback)对每个元素执行函数,创建新数组新数组
filter(callback)过滤满足条件的元素新数组(过滤后的)
reduce(callback, initialValue)将数组减少为单个值累计值
every(callback)检查是否所有元素都满足条件布尔值
some(callback)检查是否至少有一个元素满足条件布尔值

这里最常用的方法就是map和forEach了。下面我们展示如何使用map对数组内元素进行批量修改,通过forEach进行数组的遍历。

/* map */
let colors = ['红','绿','蓝']
colors=colors.map(function(ele){//ele标识元素
return ele+'色';
})
console.log(colors);//['红色', '绿色', '蓝色']
/* forEach遍历颜色数组 */
colors.forEach(function(ele){
  console.log(ele);
})
//依次打印
//红色
//绿色    
//蓝色

如果我们访问数组中不存在的下标,该元素会变成undefined。

console.log(colors[1000]);//undefined

注意:在JavaScript中,数组是一种特殊的对象,它具有一些额外的特性,如自动索引和自动类型转换。例如,你可以直接使用索引访问数组中的元素(如arr[0]),而不需要使用点符号(如arr.0)。此外,JavaScript中的所有值都是可变的,这意味着你可以随时更改数组中的任何元素的属性或值。

总结:本节我们详细讲解了JS中的Array数组对象,了解了数组的遍历以及一些基础属性;数组对于JS来说十分重要,读者需要勤加练习,熟悉数组的属性和方法调用。

点赞(91)

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

Dotcpp在线编译      (登录可减少运行等待时间)