📅  最后修改于: 2023-12-03 15:16:12.916000             🧑  作者: Mango
数组是 JavaScript 中非常重要的一种数据结构。它提供了许多有用的方法,可以帮助我们轻松地处理和操作数组中的数据。在这个备忘单中,我们将会介绍数组的一些重要方法及其用法。
创建数组的方式有很多。以下几种是最常见的方法:
// 空数组
const arr1 = [];
// 包含元素的数组
const arr2 = [1, 2, 3];
// 使用 Array 构造函数
const arr3 = new Array();
const arr4 = new Array(1, 2, 3);
以下方法可以用来更改和读取数组中的元素:
// 读取元素
const arr = [1, 2, 3, 4, 5];
console.log(arr[0]); // 输出 1
// 更改元素
arr[0] = 10;
console.log(arr); // 输出 [10, 2, 3, 4, 5]
以下方法可以用来对数组中的元素进行迭代:
forEach 方法接受一个回调函数,对数组中的每个元素执行一次。回调函数接受三个参数:当前元素,当前索引和数组本身。
const arr = [1, 2, 3, 4, 5];
arr.forEach((element, index, array) => {
console.log(element, index);
});
// 输出:
// 1 0
// 2 1
// 3 2
// 4 3
// 5 4
map 方法返回一个新数组,其中包含对每个元素应用回调函数的结果。回调函数接受三个参数:当前元素,当前索引和数组本身。
const arr = [1, 2, 3, 4, 5];
const arr2 = arr.map((element, index, array) => {
return element * 2;
});
console.log(arr2); // 输出 [2, 4, 6, 8, 10]
filter 方法返回一个新数组,其中包含符合回调函数条件的元素。回调函数接受三个参数:当前元素,当前索引和数组本身。
const arr = [1, 2, 3, 4, 5];
const arr2 = arr.filter((element, index, array) => {
return element % 2 === 0;
});
console.log(arr2); // 输出 [2, 4]
reduce 方法返回一个合并所有元素的单一值。回调函数接受四个参数:累加器,当前元素,当前索引和数组本身。
const arr = [1, 2, 3, 4, 5];
const sum = arr.reduce((accumulator, currentValue, index, array) => {
return accumulator + currentValue;
}, 0);
console.log(sum); // 输出 15
以下方法可以用来对数组进行删除、添加和排序:
push 方法用于向数组末尾添加元素,pop 方法用于从数组末尾删除元素。
const arr = [1, 2, 3];
arr.push(4);
console.log(arr); // 输出 [1, 2, 3, 4]
arr.pop();
console.log(arr); // 输出 [1, 2, 3]
shift 方法用于从数组开头删除元素,unshift 方法用于向数组开头添加元素。
const arr = [1, 2, 3];
arr.unshift(0);
console.log(arr); // 输出 [0, 1, 2, 3]
arr.shift();
console.log(arr); // 输出 [1, 2, 3]
splice 方法用于在数组中添加或删除元素。它接受三个参数:开始位置,删除元素的数量和添加的元素。如果只需要添加元素,则删除元素的数量为 0。
const arr = [1, 2, 3];
arr.splice(1, 1, 4, 5);
console.log(arr); // 输出 [1, 4, 5, 3]
sort 方法用于按照指定顺序排序数组元素。它接受一个可选的回调函数,用于定义排序顺序。
const arr = [5, 1, 4, 2, 3];
arr.sort((a, b) => {
return a - b;
});
console.log(arr); // 输出 [1, 2, 3, 4, 5]
这是一份简单的 JavaScript 数组方法备忘单,其中包含了一些常用的方法及其用法。在实际开发中,我们还会用到很多其他方法,建议大家多多练习并深入了解。