当今的Web开发中,Javascript是最重要的编程语言之一。作为一名程序员,掌握Javascript的数组增删改查操作可以极大地提高自己开发的效率。
在本篇文章中,我们将深入探究Javascript数组的增删改查操作,并通过易懂的例子带你从零基础开始轻松掌握这些操作。

1.增加元素:
-
使用
push()
方法向数组的末尾添加一个或多个元素。push()
方法会修改原始数组,并返回新数组的长度。下面是使用
push()
方法向数组添加元素的示例代码:
c
let array = [1, 2, 3]; // 原始数组
array.push(4); // 向数组末尾添加单个元素
console.log(array); // 输出: [1, 2, 3, 4]
array.push(5, 6); // 向数组末尾添加多个元素
console.log(array); // 输出: [1, 2, 3, 4, 5, 6]
在上面的例子中,我们首先创建了一个包含数字1、2和3的数组。然后,我们使用push()
方法依次向数组末尾添加了数字4、5和6。最后,我们通过console.log()
来输出最终的数组内容。
请注意,push()
方法会直接修改原始数组,而不是创建一个新的数组副本。如果你不希望修改原始数组,可以先复制数组,然后对复制后的数组使用push()
方法。
- 使用
unshift()
方法向数组的开头添加一个或多个元素。unshift()
方法会修改原始数组,并返回新数组的长度。
下面是使用unshift()
方法向数组添加元素的示例代码:
c
let array = [1, 2, 3]; // 原始数组
array.unshift(0); // 向数组开头添加单个元素
console.log(array); // 输出: [0, 1, 2, 3]
array.unshift(-2, -1); // 向数组开头添加多个元素
console.log(array); // 输出: [-2, -1, 0, 1, 2, 3]
在上面的例子中,我们首先创建了一个包含数字1、2和3的数组。然后,我们使用unshift()
方法依次向数组开头添加了数字0,以及数字-2和-1。最后,我们通过console.log()
来输出最终的数组内容。
请注意,unshift()
方法会直接修改原始数组,而不是创建一个新的数组副本。如果你不希望修改原始数组,可以先复制数组,然后对复制后的数组使用unshift()
方法。
2.删除元素:
-
使用
pop()
方法可以从数组末尾移除并返回最后一个元素。pop()
方法会修改原始数组,并返回被移除的元素。下面是使用
pop()
方法移除数组末尾元素的示例代码:
c
let array = [1, 2, 3, 4]; // 原始数组
let lastElement = array.pop(); // 移除数组末尾元素
console.log(lastElement); // 输出: 4
console.log(array); // 输出: [1, 2, 3]
在上面的例子中,我们首先创建了一个包含数字1、2、3和4的数组。然后,我们使用pop()
方法移除了数组末尾的元素4,并将其赋值给变量lastElement
。最后,我们通过console.log()
来输出被移除的元素以及最终的数组内容。
请注意,pop()
方法会直接修改原始数组,而不是创建一个新的数组副本。如果你需要保留原始数组,可以在调用pop()
方法之前先复制一份数组。
- 使用
shift()
方法可以从数组开头移除并返回第一个元素。shift()
方法会修改原始数组,并返回被移除的元素。
下面是使用shift()
方法移除数组开头元素的示例代码:
c
let array = [1, 2, 3, 4]; // 原始数组
let firstElement = array.shift(); // 移除数组开头元素
console.log(firstElement); // 输出: 1
console.log(array); // 输出: [2, 3, 4]
在上面的例子中,我们首先创建了一个包含数字1、2、3和4的数组。然后,我们使用shift()
方法移除了数组开头的元素1,并将其赋值给变量firstElement
。最后,我们通过console.log()
来输出被移除的元素以及最终的数组内容。
请注意,shift()
方法会直接修改原始数组,而不是创建一个新的数组副本。如果你需要保留原始数组,可以在调用shift()
方法之前先复制一份数组。
- 使用
splice()
方法可以根据索引位置删除一个或多个元素,并可以选择插入新的元素到指定位置。splice()
方法会修改原始数组,并返回被删除的元素组成的新数组。
下面是使用splice()
方法删除数组元素的示例代码:
c
let array = [1, 2, 3, 4]; // 原始数组
let removedElements = array.splice(1, 2); // 从索引位置1开始删除2个元素
console.log(removedElements); // 输出: [2, 3]
console.log(array); // 输出: [1, 4]
在上面的例子中,我们首先创建了一个包含数字1、2、3和4的数组。然后,我们使用splice()
方法从索引位置1开始删除2个元素,即删除了数字2和数字3,并将被删除的元素组成的新数组赋值给变量removedElements
。最后,我们通过console.log()
来输出被删除的元素以及最终的数组内容。
要注意的是,splice()
方法的第一个参数是删除的起始索引位置,第二个参数是要删除的元素个数(可选)。你还可以在第三个以及之后的参数位置插入新的元素,这些新元素将会插入到指定索引位置。
如果你只想删除元素而不插入新元素,可以省略第三个以及之后的参数。如果你想插入新元素而不删除任何元素,可以设置第二个参数为0,然后在第三个参数位置开始插入新元素。
3.查找元素:
-
使用
indexOf()
方法可以查找指定元素第一次出现的索引,如果指定元素不存在于数组中,则返回-1。下面是使用
indexOf()
方法查找数组元素的示例代码:
ini
let array = [1, 2, 3, 4]; // 原始数组
let index = array.indexOf(3); // 查找数字3在数组中的索引位置
console.log(index); // 输出: 2
在上面的例子中,我们首先创建了一个包含数字1、2、3和4的数组。然后,我们使用indexOf()
方法查找数字3在数组中第一次出现的索引位置,并将结果赋值给变量index
。最后,我们通过console.log()
来输出查找到的索引位置。
要注意的是,indexOf()
方法只会返回指定元素在数组中第一次出现的索引位置。如果指定元素多次出现在数组中,则只返回第一次出现的索引位置。如果指定元素不存在于数组中,则返回-1。
如果需要查找指定元素在数组中的所有索引位置,可以使用循环遍历数组,并使用indexOf()
方法检查每个元素是否等于指定元素。
-
使用
lastIndexOf()
方法可以查找指定元素最后一次出现的索引,如果指定元素不存在于数组中,则返回-1。下面是使用
lastIndexOf()
方法查找数组元素的示例代码:
ini
javascriptCopy Code
let array = [1, 2, 3, 2, 4]; // 原始数组
let lastIndex = array.lastIndexOf(2); // 查找数字2在数组中最后一次出现的索引位置
console.log(lastIndex); // 输出: 3
在上面的例子中,我们首先创建了一个包含数字1、2、3、2和4的数组。然后,我们使用lastIndexOf()
方法查找数字2在数组中最后一次出现的索引位置,并将结果赋值给变量lastIndex
。最后,我们通过console.log()
来输出查找到的索引位置。
要注意的是,lastIndexOf()
方法只会返回指定元素在数组中最后一次出现的索引位置。如果指定元素多次出现在数组中,则只返回最后一次出现的索引位置。如果指定元素不存在于数组中,则返回-1。
与indexOf()
方法类似,如果需要查找指定元素在数组中的所有索引位置,可以使用循环遍历数组,并使用lastIndexOf()
方法检查每个元素是否等于指定元素。
请注意 ,lastIndexOf()
方法是从数组的末尾开始搜索的。如果想要从数组的开头开始搜索,请使用indexOf()
方法。
-
使用
includes()
方法可以检查数组是否包含指定元素,它返回一个布尔值,表示指定元素是否存在于数组中。下面是使用
includes()
方法检查数组元素的示例代码:
ini
let array = [1, 2, 3, 4]; // 原始数组
let includesElement = array.includes(3); // 检查数组中是否包含数字3
console.log(includesElement); // 输出: true
在上面的例子中,我们首先创建了一个包含数字1、2、3和4的数组。然后,我们使用includes()
方法检查数组中是否包含数字3,并将结果赋值给变量includesElement
。最后,我们通过console.log()
来输出检查结果。
要注意的是,includes()
方法会返回一个布尔值,即true
或false
。如果指定元素存在于数组中,则返回true
;如果指定元素不存在于数组中,则返回false
。
如果需要检查数组中是否包含多个元素,可以多次调用includes()
方法来逐个检查。
另外,需要注意的是includes()
方法是严格相等(===)来进行比较的,意味着它会同时比较元素的值和类型。如果你想使用其他比较方式,可以使用其他方法,比如循环遍历数组并逐个比较元素。