time-to-botec

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

padStart.js (1026B)


      1 var createPadding = require('./_createPadding'),
      2     stringSize = require('./_stringSize'),
      3     toInteger = require('./toInteger'),
      4     toString = require('./toString');
      5 
      6 /**
      7  * Pads `string` on the left 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  * _.padStart('abc', 6);
     21  * // => '   abc'
     22  *
     23  * _.padStart('abc', 6, '_-');
     24  * // => '_-_abc'
     25  *
     26  * _.padStart('abc', 3);
     27  * // => 'abc'
     28  */
     29 function padStart(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     ? (createPadding(length - strLength, chars) + string)
     36     : string;
     37 }
     38 
     39 module.exports = padStart;