Avatar ·

如何在JavaScript中正确遍历数组:forEach、for...of还是普通for循环?

大家好!我刚开始学习JavaScript,遇到了一个问题。我需要遍历数组的所有元素并对它们执行某些操作。我知道有很多方法,但我搞混了,哪种方法是正确的,什么时候该用哪种。 举个例子:我有一个数字数组 `[1, 2, 3, 4, 5]`,我想把每个元素输出到控制台。我尝试了几种方式: 1. 普通 `for` 循环: ```javascript let arr = [1, 2, 3, 4, 5]; for (let i = 0; i < arr.length; i++) { console.log(arr[i]); } ``` 2. `forEach` 方法: ```javascript arr.forEach(function(item) { console.log(item); }); ``` 3. `for...of` 循环: ```javascript for (let item of arr) { console.log(item); } ``` 这三种方式都能工作,但我不明白它们之间的区别。什么时候该用哪种?我还听说过 `for...in`,但据说它不应该用于数组。为什么? 还有一个问题:我不只是要输出元素,而是要创建一个新数组,其中每个