你应该知道的 7 个 JavaScript 数组方法

2025-06-07

你应该知道的 7 个 JavaScript 数组方法

数组是程序员在项目中最常使用或可能遇到的东西之一。在这方面,我们将要研究的数组方法应该会派上用场。
我们将使用单个数组作为示例

const clubs = [
  { name: "All-stars", fans: 20000 },
  { name: "Bay", fans: 30000 },
  { name: "C-stars", fans: 25000 },
  { name: "D-pillars", fans: 40000 },
  { name: "Clos", fans: 60000 },
  { name: "Magic", fans: 45000 }
]
Enter fullscreen mode Exit fullscreen mode

让我们看看这个方法以及它们对数组的作用

筛选

filter 方法用于从数组中过滤或删除所有符合命题逻辑的元素,并返回一个新数组,而不改变原始数组,
例如

const filterClub = clubs.filter((item) => {
  return item.fans <= 30000;
});
Enter fullscreen mode Exit fullscreen mode

所有球迷少于或等于 30,000 人的俱乐部将被归还到新的数组中。

截图(91)

filter 方法使用起来很简单。它为每个项返回 true 或 false。如果项为 true,则将其包含在新数组中;如果为 false,则不包含新数组。filter 方法不会更改正在过滤的数组或对象。此方法非常方便,因为我们不必担心后续使用时旧数组会被更改。

地图

此方法允许将一个数组转换为一个新数组,使数组中的所有项看起来略有不同。假设我们想获取数组 sample 中所有俱乐部的名称。我们可以使用 map 方法来实现。
示例

const clubNames = clubs.map((item) => {
  return item.name
});
Enter fullscreen mode Exit fullscreen mode

截图(92)

我们得到了一个新数组,它打印出原始数组中俱乐部的名称,而不会改变原始数组。当你想获取对象中的项或对象的键,或者将数组从一种形式转换为另一种形式时,这非常方便。它有数百万种用途。

寻找

此方法允许在对象数组中查找单个对象。该方法以单个项作为参数,并返回语句返回 true 的第一个项。

const findClub = clubs.find((item) => {
  return item.name === "All-stars"
});
Enter fullscreen mode Exit fullscreen mode

截图(93)

forEach

与我们之前介绍的方法不同,此方法不返回任何内容。它的工作原理与 forLoop 非常相似,但它接受一个函数,并且只接受一个参数。

clubs.forEach((item) => {
  console.log(item.name);
});
Enter fullscreen mode Exit fullscreen mode

对于数组中的每个元素,它都会打印出它们的名称。该方法使处理需要循环遍历的数组变得更加容易,这样你就不必编写笨重而冗长的 forLoop 语法了。

一些

此函数不会返回一个全新的数组。它只会返回 true 或 false。我们可以检查数组中的某些元素是否支持或否定命题逻辑中的主语。示例

const highestFans = clubs.some((item) => {
  return item.fans <= 30000
});
Enter fullscreen mode Exit fullscreen mode

截图(94)

它检查任何项目值是否返回 true,并返回符合条件的第一个项目。

每一个

此方法检查数组中的每个项目是否符合主题命题逻辑并返回 true 或 false
示例

const highestFans = clubs.every((item) => {
  return item.fans <= 30000
});
Enter fullscreen mode Exit fullscreen mode

截图(95)

减少

此方法对数组执行操作,并返回所有不同操作的组合。为了获取俱乐部数组中所有球迷的总数,我们按以下方式使用 reduce 方法

const totalFans = clubs.reduce((x, item) => {
  return item.fans + x;
}, 0);
Enter fullscreen mode Exit fullscreen mode

截图(96)

它接受一个属性和一个我们希望该属性被归约到的项。它还接受第二个参数,该参数指定了归约的起始位置。在本例中,它从 0 开始。

文章来源:https://dev.to/mcube25/7-javascript-array-methods-you-should-know-7mf
PREV
我从事开发工作 11 年了。我学到的 5 件事:不要用大炮打蚊子
NEXT
创建一种新的编程语言 Rumi