You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
19 lines
578 B
19 lines
578 B
6 years ago
|
"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));
|
||
|
};
|