node/tools/eslint/node_modules/es5-ext/array/generate.js
Michaël Zasso 2d441493a4 tools: update eslint to v1.10.3
PR-URL: https://github.com/nodejs/io.js/pull/2286
Reviewed-By: Roman Reiss <me@silverwind.io>
2016-01-13 23:15:39 +01:00

21 lines
470 B
JavaScript

'use strict';
var toPosInt = require('../number/to-pos-integer')
, value = require('../object/valid-value')
, slice = Array.prototype.slice;
module.exports = function (length/*, …fill*/) {
var arr, l;
length = toPosInt(value(length));
if (length === 0) return [];
arr = (arguments.length < 2) ? [undefined] :
slice.call(arguments, 1, 1 + length);
while ((l = arr.length) < length) {
arr = arr.concat(arr.slice(0, length - l));
}
return arr;
};