.map(), .filter() i .reduce() w JavaScript

map(), Reduce(), filter()

Jeśli jesteś programistą JavaScript lub dopiero zaczynasz od JavaScript, gdzieś słyszałeś o map(), filter() i Reduce(). Czasami ludzie, którzy są nowicjuszami w tych funkcjach, są zdezorientowani, jak dokładnie te funkcje robią i jak z nich korzystać? Omówmy to w tym artykule poniżej jeden po drugim.

.mapa()

.map() służy do przekształcania tablicy. Przekształcenie oznacza powiedzmy, że masz tablicę, która zawiera pewne liczby i musisz znaleźć podwójną każdą liczbę lub potrójną każdą liczbę, więc chcesz ją przekształcić za pomocą jakiejś logiki transformacji i uzyskać z niej nową tablicę.

const arr = [2, 4, 5, 6, 8]
//  double arr = [4, 8, 10, 12, 16]
//  triple arr = [8, 12, 15, 18, 24]

let array = [1, 2, 3, 4, 5, 6]
function double(x){
return x * 2;
}
const result = array.map(double); // take callback function
//   Or with arrow function
const result = array.map(x => x * 2);
console.log(result);        // will print an array with double

Metoda .filter() służy do filtrowania tablicy. Przefiltruje tablicę w oparciu o pewną logikę i zwróci tablicę z przefiltrowaną wartością. Powiedzmy na przykład, że masz tablicę i chcesz dowiedzieć się, które elementy są większe niż określona liczba? Wypróbujmy to.

let arr = [2, 8, 3, 4, 5, 6]
function greaterThan3(x){
return x > 3;
}
const result = arr.filter(greaterThan3); // take callback function
//   or with arrow function
const result = arr.filter(x => x > 3);
console.log(result);

Metoda .reduce() używana w miejscu, w którym trzeba pobrać cały element tablicy i wymyślić z niego pojedynczą wartość. Na przykład powiedzmy, że mamy tablicę i musimy znaleźć jej sumę lub maksimum.

let arr = [1, 5, 6, 8, 9, 3]
// sum, maximum

// Sum with non functional way
let arr = [2, 8, 3, 4, 5, 6];
function findSum(){
 let sum = 0;
  for(let i = 0; i < arr.length; i++){
   sum = sum + arr[i];
   }
  return sum;
 }
console.log(findSum());

arr.reduce(function(acc, curr){ // first parameter
// it will iterate over each element of array and this current(curr) with refer to current element of this array.
// Accumulator(acc) will accumulate the result for elements of the array.
},0) // second parameter
 it represents the initial value for the accumulator

let arr = [1, 2, 3, 4, 5, 6]
const result = arr.reduce(function(acc, curr){
   acc = acc + curr;
   return acc;
});
console.log(result);

Jest to najprostszy sposób użycia .map(), .filter() i .reduce(). Jeśli zastąpisz pętlę for tą metodą, to tam, gdzie pasuje. Pomoże ci to uczynić kod bardziej czystszym i łatwiejszym do odczytania.

Udanego kodowania!

Suggested posts

3 sprawdzone sposoby na poprawę umiejętności pisania

Korzyści płynące z pisania i strategie, które Ci w tym pomogą

3 sprawdzone sposoby na poprawę umiejętności pisania

W 2022 roku, wraz z wydaniem GPT-3, umiejętność pisania wydaje się tracić na znaczeniu. Dzięki sztucznej inteligencji osoby o słabym pisaniu mogą również generować wysokiej jakości personel.

Telewizja sieciowa Twitter

Telewizja sieciowa Twitter

To, co stare, jest teraz znowu nowe, a to, co kiedyś było lśniącą, błyszczącą rzeczą, teraz wydaje się nudne. Nie mówię o dżinsach JNCO, które powróciły wśród fajnych dzieciaków w śródmieściu wraz z innymi modami późnych lat 90.

Related posts

Powolna erozja: ujawnianie sposobów, w jakie ludzie marnują swoje kariery

Powolna erozja: ujawnianie sposobów, w jakie ludzie marnują swoje kariery

W dzisiejszym dynamicznym i konkurencyjnym świecie kariera odgrywa znaczącą rolę w rozwoju osobistym, stabilności finansowej i ogólnej satysfakcji z życia. Jednak wiele osób wpada w nieustający cykl stagnacji i niezadowolenia, stopniowo marnując swoje życie zawodowe.

Ponowne przemyślenie mediów: pięć prawd McChesneya i przyszłość komunikacji

W dzisiejszym hiperpołączonym świecie systemy medialne odgrywają kluczową rolę w kształtowaniu opinii publicznej, a co za tym idzie, w demokratycznym procesie decyzyjnym. W swojej dogłębnej analizie ekonomii politycznej komunikacji uczony Robert McChesney kwestionuje konwencjonalną wiedzę i przedstawia to, co nazywa „pięcioma prawdami” o mediach.

Dlaczego niektórzy freelancerzy udają swoje życie

Dlaczego niektórzy freelancerzy udają swoje życie

Niedawno byłem na Linkedin, największej profesjonalnej sieci społecznościowej na świecie, i znalazłem posty obserwowanych przeze mnie niezależnych projektantów, którzy przykuli moją uwagę. Wszyscy zamieszczali zdjęcia z samolotów, na plaży z laptopami, z basenów i biur z niesamowitymi widokami.

Niebezpieczne rozmowy

Niebezpieczne rozmowy

Jeśli chcemy dalej prosperować na tej planecie, będziemy musieli prowadzić niebezpieczne rozmowy. Takie, które rzucają wyzwanie temu, co zrobiliśmy, co robimy i co obecnie zamierzamy robić (lub planujemy robić).