Почему мой цикл JavaScript Foreach не изменяет оригинальный массив? [дублировать]Javascript

Форум по Javascript
Ответить
Anonymous
 Почему мой цикл JavaScript Foreach не изменяет оригинальный массив? [дублировать]

Сообщение Anonymous »

Я пытаюсь удвоить каждый номер в массиве, используя Foreach , но исходный массив не меняется. Вот мой код: < /p>

Код: Выделить всё

const numbers = [1, 2, 3];
numbers.forEach((num) => {
num = num * 2; // Doubling the value
});
console.log(numbers); // Output: [1, 2, 3] (unchanged)< /code>
< /div>
< /div>
< /p>
Ожидаемый вывод: < /p>
[2, 4, 6]
What I’ve Tried:
Used map() instead (works, but I want to understand forEach).
Tried accessing the array by index:

Код: Выделить всё

numbers.forEach((num, index) => {
numbers[index] = num * 2; // This works, but why doesn’t the first approach?
});
console.log(numbers);



Подробнее здесь: https://stackoverflow.com/questions/795 ... inal-array
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»