16 lines
643 B
JavaScript
16 lines
643 B
JavaScript
|
// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)
|
||
|
'use strict';
|
||
|
var toObject = require('./_to-object');
|
||
|
var toAbsoluteIndex = require('./_to-absolute-index');
|
||
|
var toLength = require('./_to-length');
|
||
|
module.exports = function fill(value /* , start = 0, end = @length */) {
|
||
|
var O = toObject(this);
|
||
|
var length = toLength(O.length);
|
||
|
var aLen = arguments.length;
|
||
|
var index = toAbsoluteIndex(aLen > 1 ? arguments[1] : undefined, length);
|
||
|
var end = aLen > 2 ? arguments[2] : undefined;
|
||
|
var endPos = end === undefined ? length : toAbsoluteIndex(end, length);
|
||
|
while (endPos > index) O[index++] = value;
|
||
|
return O;
|
||
|
};
|