sum

sum

> Функции

Возвращает сумму всех числовых элементов массива array.

Параметры
Возвращаемое значение
TypeScript

В JavaScript нет встроенной суммы: пишут a.reduce((s, x) => s + x, 0). Две ловушки. Без начального значения reduce возбуждает TypeError на пустом массиве: сохраните 0. И + склеивает, как только элемент оказывается строкой — ["a", "b"].reduce((s, x) => s + x, 0) равно строке "0ab", а не числу.

Python

В Python sum() возбуждает TypeError, как только элемент не является числом, тогда как sum в LeekScript преобразует каждый элемент (нечисловая строка становится там своей длиной). Другое отличие: тип результата следует за типом элементов, sum([1, 2]) возвращает целое 3, тогда как sum в LeekScript всегда возвращает вещественное. sum([]) равно 0, а второй аргумент задаёт начальное значение — sum([1, 2], 10) равно 13.