UNPKG

1.02 kBJavaScriptView Raw
1var createPadding = require('./_createPadding'),
2 stringSize = require('./_stringSize'),
3 toInteger = require('./toInteger'),
4 toString = require('./toString');
5
6/**
7 * Pads `string` on the right side if it's shorter than `length`. Padding
8 * characters are truncated if they exceed `length`.
9 *
10 * @static
11 * @memberOf _
12 * @since 4.0.0
13 * @category String
14 * @param {string} [string=''] The string to pad.
15 * @param {number} [length=0] The padding length.
16 * @param {string} [chars=' '] The string used as padding.
17 * @returns {string} Returns the padded string.
18 * @example
19 *
20 * _.padEnd('abc', 6);
21 * // => 'abc '
22 *
23 * _.padEnd('abc', 6, '_-');
24 * // => 'abc_-_'
25 *
26 * _.padEnd('abc', 3);
27 * // => 'abc'
28 */
29function padEnd(string, length, chars) {
30 string = toString(string);
31 length = toInteger(length);
32
33 var strLength = length ? stringSize(string) : 0;
34 return (length && strLength < length)
35 ? (string + createPadding(length - strLength, chars))
36 : string;
37}
38
39module.exports = padEnd;