Расширенные массивы Javascript

Часть 18

Массивы

Мы видели массивы в части 6;



и мы сказали, что они выглядят примерно так:

Мы также сказали, что можем сделать для них цикл и для каждого цикла. Теперь давайте посмотрим еще на несколько. Но прежде чем мы это сделаем, давайте вспомним, как работает forEach.

Допустим, мы хотим умножить каждое число в массиве на 2:

Принцип работы forEach заключается в том, что мы должны где-то хранить новые числа, а это означает, что мы должны создать новый массив.

Итак, мы нажимаем на массив по мере его прохождения num * 2.

карта

В отличие от forEach с картой нам не нужно создавать новый массив:

Обратите внимание, что с помощью map вам всегда нужно что-то вернуть; forEach просто перебирает числа и умножает их на 2. Map, однако, перебирает числа и возвращает новый массив тут же.

С картой вы всегда возвращаете элемент

map создает новый массив - mapArray по сравнению с forEach, который просто выполняет целый набор действий на основе массива. Эти действия не так уж и ограничены, и они создают нечистые функции. Еще одна важная вещь с картой - это то, что мы не меняем массив.

Кроме того, массив остается неизменным с map, потому что мы всегда просто создаем новую копию массива; мы никогда не изменяем данные.

Фильтр

Как следует из названия, мы можем фильтровать массив с условием:

Как и в случае с map, filter возвращает новый массив.

Мы получаем фильтр, содержащий 10 и 16. Если мы изменим num ›5 на num === 5:

Уменьшать

Well reduce - мощный метод; с ним можно многое сделать; вы можете фильтровать и отображать с помощью уменьшения.

reducearray возвращает новый массив; он также принимает так называемый аккумулятор и число, которое в данном случае равно 1, 2, 10, 16.

аккумулятор - это то, где мы можем хранить информацию, которая происходит в теле функции.

Позволь мне объяснить:

Мы говорим здесь, что каждый раз, когда вы выполняете итерацию, например, скажем, если аккумулятор равен нулю, результат будет (0 +1 = 1).

Когда приходит 2, мы делаем (1 + 2 = 3)… аккумулятор запоминает, что было раньше.

Увидимся в 19 части