*
, с пробелами или банально с сочетанием русских и JIATUHCKUX букв? Или у тебя будут проверки на все случаи в жизни?const f = (a, b, e) => { ... };
// loop
.addEventListener('click', f.bind(null, 1, 2));
const f = (a, b) => (e) => { ... };
// loop
.addEventListener('click', f(1, 2));
Объект, это ссылочный тип
Нет смысла заниматься оптимизацией прохода списка из 2-3 элементов
WbICHA, я бы еще добавил, что создание функции нужно выносить за цикл, а не плодить миллион однотипных
map() возвращает совершенно новый массив с преобразованными элементами и тем же количеством данных. В случае forEach(), даже если он вернется undefined, он изменит исходный массив с помощью callback.
Поэтому что map() опирается на неизменность и forEach() является мутатором.
Вероятнее всего имелось ввиду, что если вы захотите как-то повлиять намассив, то вы обязательно измените исходный. А если не хотите его менять, то надо сначала объявить новый результирующий массив, чтобы его передать как параметр, и в него уже пушить новые элементы.
В данном случае нет разницы что использовать.
.slice(0, x);
тут зачем?