arrayMin

arrayMin

> Functions

Returns the smallest element of the array.

Parameters
Return
TypeScript

In JavaScript, Math.min(...a) returns Infinity on an empty array, where arrayMin returns null, and NaN as soon as an element is not a number — strings are not ordered alphabetically as in LeekScript. Above all, the ... spread is limited to about 65,000 arguments: beyond that, Math.min(...a) raises a RangeError. On a large array, write a.reduce((m, x) => x < m ? x : m) instead.

Python

In Python, min() raises a ValueError on an empty list, where arrayMin returns null: pass default to get that behaviour back, min(a, default=None). The comparison is Python's and not LeekScript's order: a list mixing numbers and strings raises a TypeError instead of ordering them. min also accepts a key, min(a, key=lambda e: e.life), and then returns the element, not the key's value.

Examples