UNPKG

jsmodern

Version:

An extension to existing JavaScript, influenced by other great languages such as Rust, Dart, Java, Golang, etc.

21 lines 846 B
import { checkInt } from './check-int'; export const range = { isStatic: true, label: 'range', fn: function numberRange(start, end, step) { const startInt = checkInt(start, 'start'); const isEndNull = null == end; const isStepNull = null == step; if (isEndNull && isStepNull) { if (startInt < 0) throw new TypeError(`'start' cannot be less than 0`); return Array.from(Array(startInt), (_, i) => i); } const endInt = checkInt(end, 'end'); if (isStepNull) return Array.from(Array(endInt - startInt), (_, i) => startInt + i); const stepInt = checkInt(step, 'step'); return Array.from(Array(Math.ceil((endInt - startInt) / stepInt)), (_, i) => startInt + (i * stepInt)); }, }; //# sourceMappingURL=range.js.map