JavaScript 如何修改 数组中的所有元素

修改数组中的所有元素

How to Modify all Array Elements in JavaScript

要更改数组中所有元素的值:

  1. 使用该forEach()方法遍历数组。该方法采用一个函数,该函数通过数组元素、它的索引和数组本身来调用。
  2. 使用当前迭代的索引更改相应的数组元素。
索引.js
const arr = ['a', 'b', 'c'];

arr.forEach((element, index) => {
  arr[index] = element + index;
});

console.log(arr); // 👉️ ['a0', 'b1', 'c2']

我们传递给
Array.forEach()
方法的函数被每个元素、其对应的索引和整个数组调用。

我们使用索引来改变特定位置的数组元素的值。

我们可以通过使用普通for循环来获得相同的结果。然而,
for循环有点冗长和间接。

索引.js
const arr = ['a', 'b', 'c'];

for (let index = 0; index < arr.length; index++) {
  arr[index] = arr[index] + index;
}

console.log(arr); // 👉️ ['a0', 'b1', 'c2']

这是个人喜好的问题,但在我看来,这种forEach()方法更具可读性和直观性。

大多数有经验的开发人员都会避免改变数组和对象。相反,他们创建包含所需元素的新数组。我们可以使用该方法来实现这一点。 map
索引.js
const arr = ['a', 'b', 'c'];

const newArr = arr.map((element, index) => {
  return element + index;
});

console.log(newArr); // 👉️ ['a0', 'b1', 'c2']

console.log(arr) // 👉️ ['a', 'b', 'c']

我们使用
Array.map
方法的方式与我们使用该方法的方式非常相似
forEach

但是,这次我们不更改原始数组中的元素。相反,我们创建一个包含修改后元素的新数组。

如果我们多次改变数组的内容,代码会变得很难理解。根据我的经验,更好的方法是创建一个只包含我们需要的元素的新数组。

进一步阅读

发表评论