time-to-botec

Benchmark sampling in different programming languages
Log | Files | Refs | README

padEnd.js (1017B)


      1 var 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  */
     29 function 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 
     39 module.exports = padEnd;