blob: f227f239de98c93821fc0a721cdb2fb89dd9e1a2 [file] [log] [blame]
'use strict';
var toInteger = require('../../number/to-integer')
, value = require('../../object/valid-value')
, repeat = require('./repeat')
, abs = Math.abs, max = Math.max;
module.exports = function (fill/*, length*/) {
var self = String(value(this))
, sLength = self.length
, length = arguments[1];
length = isNaN(length) ? 1 : toInteger(length);
fill = repeat.call(String(fill), abs(length));
if (length >= 0) return fill.slice(0, max(0, length - sLength)) + self;
return self + (((sLength + length) >= 0) ? '' : fill.slice(length + sLength));
};