Урок JavaScript №27 - forEach, перебор массива | Курс FrontEnd 2021

preview_player
Показать описание

Домашнее задание:
1) Перебрать массив строк и вывести каждую в консоль
3) Перебрать массив чисел и вывести число умноженное на индекс этого числа
4*) Реализовать свой forEach не подглядывая в урок
5*) Перебрать массив и вывести(!) каждый второй элемент
6*) Перебрать массив с конца (код будет стремный и не иметь смысла, но суть в том, что forEach менее гибкий чем for)
7***) Реализовать свой myForEachMap который перебирает элементы массива и возвращает новый массив с результатом коллбэка для каждого элемента.
Например:
const arr = [1, 2, 3];
return item * 2;
});

Курс Frontend разработки 2021 - уроки по JavaScript с нуля до junior.

00:00 - Вступление
00:23 - Перебор массива с for
01:41 - метод массива forEach
02:25 - callback для forEach
05:43 - Параметры коллбека
08:07 - Стрелочные функции как параметры
09:12 - Все аргументы forEach и результат
11:11 - Пишем свой forEach, реализация forEach
16:58 - Концовка
Рекомендации по теме
Комментарии
Автор

Ура! Наконец-то! Паша, не бросай это дело

alexvoronov
Автор

Огромное спасибо, я наконец-то понял ❤

vslqxmc
Автор

Как всегда круто👍👍👍 Примеры супер! Всё разжевано и понятно👍

f-len
Автор

cb в функции это параметр или имя ? Просто как мы вызываем функцию. такой записью cb(el, i, this)?

deanwichester
Автор

А 4-ый параметр forEach и других методов массива «thisArg» Вы используете?

velikorossnationalist
Автор

Павел, как относитесь в целом к верстальщикам и насколько востребован запрос от рынка именно на вёрстку?! Насколько я знаю, вёрстка - это неотъемлемая часть, этап в компаниях

gfwtnww
Автор

А можно вместо функций стрелок использовать function declaration?

velikorossnationalist
Автор

По 8 заданию не очень понятно... Автор видео пишет что callback-функция типа может, но не должна ничего возвращать, "это никому не нужно". Однако в 8 задании условие чтобы callback-функция вернула новый массив. Но если она ничего не возвращает, то единственный способ этот массив вернуть, это объявить массив вне функции - так же, как объявлен оригинальный массив, элементы которого эта callback-функция должна принимать.

Но как я понимаю идею задания, ты должен закидывать любой массив в эту callback-функцию и она возвращает тебе новый массив... Для таких задач правильно использовать обычную функцию, которая вполне может возвращать, что там надо вернуть...

bikadV
Автор

Непонятно, почему это называется функция callback, если по определению callback, это функция которая является аргументом в другой функции. В данном случае ForEach это не функция, а метод. Американские программеры сами запутались в определениях? В каком месте она вызывается назад? Какое-то тухлое понятие. Не заходит от слова вообще

ozkevdr
Автор

Решил всё кроме 7 задания


const arrOne = ['Андрей', 'Виталий', 'Юрий'];
arrOne.forEach((item) => {
console.log(item)
});


const arrTwo = [1, 2, 3, 4, 5];
arrTwo.forEach((item, index) => {
console.log(item * index)
})


const arrThree = [1, 2, 3, 4, 5];
arrThree.myForEach = function(cb) {
for (let i = 0; i < this.length; i++) {
const el = this[i];
cb(el, i, this);
};
};
arrThree.myForEach((el, index, array) => {
console.log(el, index, array);
});


const arrFour = [1, 2, 3, 4, 5];
for (let i = 0; i < arrFour.length; i = i+2) {
console.log(arrFour[i]);
};


// сам не дошёл как сделать, зато гугл помог с реверсом
const arrFive = [1, 2, 3, 4, 5];
const revArrFive = arrFive.reverse();
revArrFive.forEach((el) => {
console.log(el);
});

irhqhzs