333
schangxiang@126.com
2025-09-19 18966e02fb573c7e2bb0c6426ed792b38b910940
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
"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, currentLength;
    length = toPosInt(value(length));
    if (length === 0) return [];
 
    arr = arguments.length < 2 ? [undefined] : slice.call(arguments, 1, 1 + length);
 
    while ((currentLength = arr.length) < length) {
        arr = arr.concat(arr.slice(0, length - currentLength));
    }
    return arr;
};