Wpis z mikrobloga

#angularjs #angular #webdev #programowanie #frontend

Czy ktoś może wyjaśnić noobowi jak użyć poprawnie funkcji reduce(), uczę się od podstaw Angulara (i przy okazji JS), w kursie jest Angular 4 wykorzystywany a ja siedzie na 8 i zdaje sobie sprawę że pewne rzeczy się pozmieniały więc mam cheatsheet zmian typu zamiast Http używamy HttpClient itp itd. Nie radze sobie jedynie z przerobieniem jednej funkcji. Ma za zadanie sumować numbery z każdego rekordu json. w wersji 4 wygląda to tak:

countTotalCost(): void {
this.totalCost = this.cars
.map((car) => car.cost)
.reduce((prev, next) => prev + next);

}

od którejś wersji nie trzeba już mapować, ale pozostaje reduce i tak się zastanawiam jak to ugryźć. Ktoś coś? szukałem w necie, docsach i coś słabo idzie mi znalezienie rozwiązania :/
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

od którejś wersji nie trzeba już mapować


@login_zajety_sic: To chyba coś pomieszałeś, bo to co wkleiłeś raczej tego nie dotyczy.

@jacenty3590: yyy nie, prev w reduce to jest poprzednia wartość, więc jak w pierwszym 'przebiegu' zwrócisz sume dwóch cost to w drugim będziesz próbował wziąć cost z wcześniej otrzymanej sumy
  • Odpowiedz
via Wykop Mobilny (Android)
  • 0
@laki1: dzięki wielkie, problem polegał na tym że wywolywalem funkcje w tym samym czasie co pobieranie danych więc nie sumowalo mi. Zmieniłem wywołanie po pobraniu elementu i teraz jest gitara, wsio działa. Zastanawia mnie tylko to że jeżeli nie jest już wymagane mapowanie to jak to w obecnym standardzie ogarnąć?
  • Odpowiedz
@login_zajety_sic: Ziom, map to jest funkcja obecna caly czas w JavaScripcie, niezaleznie od wersji Angulara. Twoja wypowiedz swiadczy troche o tym, ze w ogole nie rozumiesz kodu ktory piszesz. Poczytaj o map i reduce, do czego sluza i kiedy sie przydaja, a pozniej postaraj sie przesledzic co robia w przytoczonym kodzie.
  • Odpowiedz
Zastanawia mnie tylko to że jeżeli nie jest już wymagane mapowanie to jak to w obecnym standardzie ogarnąć?


@login_zajety_sic: Nie korzystam obecnie z angulara, ale o ile dobrze pamietam to w pierwszych wersjach uzywali map do parsowania wyników które przyszły z http, możliwe że teraz ten HttpClient robi to już odrazu. Ale przykład który wrzuciłeś nie ma tu w ogóle nic do rzeczy
  • Odpowiedz