169 похожих чатов

Что делают не так? const numbers = [1,2,3,4,5] numbers.forEach(number => number *

2)
console.log(numbers) // 1, 2, 3, 4, 5

26 ответов

7 просмотров

forEach не создает новый массив. Просто вызывается функция для каждого элемента, ты в ней возвращаешь результат вычисления number => number * 2 но forEach этот возвращаемый результат никак не использует а map да - возьмет возвращаемое значение и добавить его в новый массив

Aynur- Автор вопроса
Sem
forEach не создает новый массив. Просто вызывается...

Ок, я могу поменять исходный массив в через форич и умножить на два?

Ты хочешь посчитать все цифры чтоли?

Aynur- Автор вопроса
swedesjs
Ты хочешь посчитать все цифры чтоли?

Нет, перемножить исходный массив.

Aynur
Ок, я могу поменять исходный массив в через форич ...

теоретически да, но это не будет ничем отличаться от обычного фора

Aynur
Нет, перемножить исходный массив.

Чтобы получились числа умноженные на 2?

Aynur- Автор вопроса
Anton Permyakov
теоретически да, но это не будет ничем отличаться ...

Угу, вот в этом и соль была. Хотелось все через форич сделать, т.к. я хочу чейнить типа filter, map и в конце форич, а у меня всегда андефанд вылетал из-за него, т.к. ничего не возвращает. Поэтому вступор он меня ввел.

Aynur
Угу, вот в этом и соль была. Хотелось все через фо...

форич имеет смысл использовать только в конце чейна

Aynur- Автор вопроса
Anton Permyakov
форич имеет смысл использовать только в конце чейн...

Он в конце и на нем вылетает андефайнд, давай пример сделаю по быстрому.

Aynur
Он в конце и на нем вылетает андефайнд, давай прим...

так и должно быть, форич ничего не возвращает, он используется только для сайд-эффектов

Aynur- Автор вопроса
Anton Permyakov
так и должно быть, форич ничего не возвращает, он ...

const numbers = [1,2,3,4,5,6,7,8,9,10] const changed = numbers .map(number => number * 2) .forEach(number => number + 1) // здесь ошибка

Aynur
const numbers = [1,2,3,4,5,6,7,8,9,10] const chan...

замени последний .forEach на .map

Aynur
const numbers = [1,2,3,4,5,6,7,8,9,10] const chan...

Можешь мне назвать предположительный результат который ты хочешь получить

Aynur- Автор вопроса
Aynur- Автор вопроса
swedesjs
Умноженный на 2?

Без разницы, да. Чтобы чейнить можно было.

Aynur
Без разницы, да. Чтобы чейнить можно было.

используй map, т.к. он возвращает новый массив, к которому ты можешь причейниться forEach ничего не возвращает, поэтому и не причейнивается

Aynur- Автор вопроса
Sem
.

Спасибо еще раз.

нифига тебе 23 человека ответило

Aynur- Автор вопроса

Нафига тебе 25 человек ответило

Похожие вопросы

Обсуждают сегодня

Какой-то там пердун в 90-х решил, что есть какая-то разная типизация. Кого вообще это волнует?
КТ315
49
void terminal_scroll() { memmove(terminal_buffer, terminal_buffer + VGA_WIDTH, buffer_size - VGA_WIDTH); memset(terminal_buffer + buffer_size - VGA_WIDTH, 0, VGA_WIDTH); ...
Егор
47
Всем привет! Подскажите, пожалуйста, в чем ошибка? Настраиваю подключение к MySQL. Либы лежат рядом с exe. Все как по "учебнику"
Евгений
16
А можете как-то проверить меня по знаниям по ассемблеру?
A A
132
Здравствуйте! У меня появилась возможность купить книгу "Изучай Haskell во имя добра!". Но я где-то слышал, что эта книга устарела. Насколько это правда??
E
22
Здравствуйте! Я вот на stepic решаю задачи на хаскеле https://stepik.org/lesson/8443/step/8?unit=1578 мой код import Data.List (isInfixOf) removing :: String -> [String] ->...
E
10
Камрады, кто тесно работал с vtv, хотел уточнить. Ширина column задаётся жёстко на этапе создания дерева или можно в рантайме ее менять программно (не мышкой)?
Ed Doc
10
да ладно ... что там неочевидного ? глянуть в исх-ки датасета и/или кверика чтобы понять в каком месте и как выполняется обращения к св-вам blablaSQL - минутное дело, даже е...
Сергей
7
Здесь для arm кто-нибудь кодит ?
Nothing
52
Всем привет, у меня есть сервер принимающий входящие HTTP подключения, как проверить, что подключение было через прокси или нет, есть какие то поля в заголовках по которым мо...
DS
8
Карта сайта