Spaces:
Runtime error
Runtime error
var toInteger = require('./toInteger'), | |
toLength = require('./toLength'); | |
/** | |
* The base implementation of `_.fill` without an iteratee call guard. | |
* | |
* @private | |
* @param {Array} array The array to fill. | |
* @param {*} value The value to fill `array` with. | |
* @param {number} [start=0] The start position. | |
* @param {number} [end=array.length] The end position. | |
* @returns {Array} Returns `array`. | |
*/ | |
function baseFill(array, value, start, end) { | |
var length = array.length; | |
start = toInteger(start); | |
if (start < 0) { | |
start = -start > length ? 0 : (length + start); | |
} | |
end = (end === undefined || end > length) ? length : toInteger(end); | |
if (end < 0) { | |
end += length; | |
} | |
end = start > end ? 0 : toLength(end); | |
while (start < end) { | |
array[start++] = value; | |
} | |
return array; | |
} | |
module.exports = baseFill; | |