sum

sum

> Funkcje

Zwraca sumę wszystkich liczbowych elementów tablicy array.

Parametry
Zwracana wartość
TypeScript

W JavaScripcie nie ma natywnej sumy: pisze się a.reduce((s, x) => s + x, 0). Dwie pułapki. Bez wartości początkowej reduce zgłasza TypeError na pustej tablicy: zostaw 0. A + skleja, gdy tylko któryś element jest łańcuchem — ["a", "b"].reduce((s, x) => s + x, 0) daje łańcuch "0ab", a nie liczbę.

Python

W Pythonie sum() zgłasza TypeError, gdy tylko któryś element nie jest liczbą, podczas gdy sum w LeekScripcie przekształca każdy element (łańcuch nieliczbowy staje się tam swoją długością). Inna różnica: typ wyniku idzie za typem elementów, sum([1, 2]) zwraca liczbę całkowitą 3, podczas gdy sum w LeekScripcie zawsze zwraca liczbę rzeczywistą. sum([]) daje 0, a drugi argument podaje wartość początkową — sum([1, 2], 10) daje 13.