UNPKG

ut2

Version:

一个现代 JavaScript 实用工具库。[点击查看在线文档]。

25 lines (21 loc) 722 B
'use strict'; var identity = require('./identity.js'); var native = require('./internals/native.js'); var isInteger = require('./isInteger.js'); var isFinite = require('./isFinite.js'); var list = function (n, iteratee) { if (iteratee === void 0) { iteratee = identity; } if (n < 1 || n > native.MAX_SAFE_INTEGER) { return []; } var index = 0; var length = native.mathMin(isInteger(n) ? n : native.mathFloor(isFinite(n) ? n : 0), native.MAX_ARRAY_LENGTH); var result = Array(length); var func = typeof iteratee === 'function' ? iteratee : identity; while (index < length) { result[index] = func(index); index++; } return result; }; module.exports = list;