tomaszs
Jak zsumować array w #javascript ?
  • Najlepsze
  • Wszystkie komentarze
epi
epi
28
@tomaszs: numbers[0] + numbers[1] + numbers[2]
( ͡° ͜ʖ ͡°)
m4kb0l
@tomaszs: Można by jeszcze tak: eѵal(numbers.join('+')) ale to taki haxowy pomysł :)
dajgryza
@tomaszs:

[1,2,3].reduce((acc, val) => acc + val, 0)
0 to wartosc startowa
val to obecna wartosc (po kolei 1, 2, 3)
acc to juz suma poprzednich warttosci
I.....0
@tomaszs: no tak
dajgryza
@tomaszs: tak jak na obrazku
bortsimpson
@dajgryza: słusznie, przykład OPa narobi pod siebie przy pustym arrayu
RolnikSamWdolinie
@tomaszs: zawsze w reduce dawaj jako drugi parametr wartość startową. Unikniesz wielu problemów
I.....0
@tomaszs: otóż nie tym razem ( ͡º ͜ʖ͡º)
RolnikSamWdolinie
@tomaszs: Z dobrych praktyk raczej wynika ze jezeli niepodanie parametru moze powodowac nieoczekiwane dzialanie to powinno sie raczej go podawac. Chyba w rulsach airbnb jest zasada która ściga za brak radixa w parseInt. Rzadko, ale może się zdarzyć, że efekt będzie zaskakujący. np dla console.log(parseInt("0700"));
tomaszs
tomaszs Autor
1
@RolnikSamWdolinie:

Jeśli głębiej się nad tym zastanowić to Twoje argumenty są bardzo przekonujące ( ͡° ͜ʖ ͡°)
tomaszs
tomaszs Autor
0
@bortsimpson: Wykop uczy , wykop radzi ( ͡° ͜ʖ ͡°)
tomaszs
tomaszs Autor
0
@dajgryza: to dobre rozwiązanie jeśli nie chcemy odróżnić stanu pustego array'a od sumy elementów równej zeru.
t.....k
t.....k
@tomaszs coś z--------y jeśli chcemy, od tego jest Array.prototype.length
tomaszs
tomaszs Autor
0
@tlaziuk: no tak. I w takim przypadku initial value się nie używa.
tomaszs
tomaszs Autor
0
@RolnikSamWdolinie: nie dodaje się kodu bo coś może się wydarzyc
I.....0
@tomaszs: czyli try/cache to zbędny bajer? dzięki, nie wiedziałem ( ͡° ͜ʖ ͡°)
RolnikSamWdolinie
@tomaszs: Nie rozumiem
tomaszs
tomaszs Autor
0
@Init0: chyba zgubiłeś kontekst ( ͡° ͜ʖ ͡°)
tomaszs
tomaszs Autor
0
@RolnikSamWdolinie: chodzi o to że jak nie musisz podawać drugiego parametru w określonej sytuacji to go nie podajesz.
tomaszs
tomaszs Autor
0
@Init0: rozmawiamy o tym czy trzeba podawać parametr metody jeśli nie jest potrzebny ( ͡° ͜ʖ ͡°)