JavaScript 中的数组对象常见内置方法

82 阅读2分钟

JavaScript 中的数组对象有许多内置方法,以下是一些常见的数组内置方法:

1. forEach

对数组的每个元素执行一次提供的函数,没有返回值。

const numbers = [1, 2, 3];
numbers.forEach(num => {
    console.log(num); // 输出: 1, 2, 3
});

2. filter

创建一个新数组,其中包含所有通过测试的元素。

const numbers = [1, 2, 3, 4];
const evenNumbers = numbers.filter(num => num % 2 === 0);
console.log(evenNumbers); // 输出: [2, 4]

3. reduce

通过一个累积器函数,将数组中的所有元素归纳成单个值。在每次迭代时,它将当前值传递到累积器中。

const numbers = [1, 2, 3];
const sum = numbers.reduce((accumulator, current) => accumulator + current, 0);
console.log(sum); // 输出: 6

4. some

测试数组中是否至少有一个元素通过提供的函数的测试。

const numbers = [1, 2, 3];
const hasEven = numbers.some(num => num % 2 === 0);
console.log(hasEven); // 输出: true

5. every

测试数组中的所有元素是否都通过提供的函数的测试。

const numbers = [2, 4, 6];
const allEven = numbers.every(num => num % 2 === 0);
console.log(allEven); // 输出: true

6. find

返回数组中满足提供的测试函数的第一个元素的值,否则返回 undefined

const numbers = [1, 2, 3];
const firstEven = numbers.find(num => num % 2 === 0);
console.log(firstEven); // 输出: 2

7. findIndex

返回给定函数测试的第一个元素的索引,如果没有符合条件的元素,则返回 -1。

const numbers = [1, 2, 3];
const index = numbers.findIndex(num => num % 2 === 0);
console.log(index); // 输出: 1

8. slice

返回数组的一个浅拷贝,选定的元素从 start(包括)到 end(不包括)。

const numbers = [1, 2, 3, 4];
const sliced = numbers.slice(1, 3);
console.log(sliced); // 输出: [2, 3]

9. splice

通过删除或替换现有元素或添加新元素来修改数组。

const numbers = [1, 2, 3, 4];
numbers.splice(1, 2, 5); // 从索引 1 开始删除 2 个元素,并添加 5
console.log(numbers); // 输出: [1, 5, 4]

10. concat

用于合并两个或多个数组,返回一个新数组。

const array1 = [1, 2];
const array2 = [3, 4];
const combined = array1.concat(array2);
console.log(combined); // 输出: [1, 2, 3, 4]

11. join

将所有元素连接成一个字符串,使用指定的分隔符。

const numbers = [1, 2, 3];
const str = numbers.join('-');
console.log(str); // 输出: "1-2-3"

12. reverse

反转数组中元素的顺序。

const numbers = [1, 2, 3];
numbers.reverse();
console.log(numbers); // 输出: [3, 2, 1]

13. sort

对数组元素进行排序并返回数组。

const numbers = [3, 1, 2];
numbers.sort(); // 默认按字符串排序
console.log(numbers); // 输出: [1, 2, 3]