ut2
Version:
一个现代 JavaScript 实用工具库。[点击查看在线文档]。
23 lines (20 loc) • 724 B
JavaScript
import identity from './identity.js';
import { MAX_SAFE_INTEGER, mathMin, mathFloor, MAX_ARRAY_LENGTH } from './internals/native.js';
import isInteger from './isInteger.js';
import isFinite from './isFinite.js';
var list = function (n, iteratee) {
if (iteratee === void 0) { iteratee = identity; }
if (n < 1 || n > MAX_SAFE_INTEGER) {
return [];
}
var index = 0;
var length = mathMin(isInteger(n) ? n : mathFloor(isFinite(n) ? n : 0), MAX_ARRAY_LENGTH);
var result = Array(length);
var func = typeof iteratee === 'function' ? iteratee : identity;
while (index < length) {
result[index] = func(index);
index++;
}
return result;
};
export { list as default };