1 var baseToString = require('../internal/baseToString'),
2 charsLeftIndex = require('../internal/charsLeftIndex'),
3 isIterateeCall = require('../internal/isIterateeCall'),
4 trimmedLeftIndex = require('../internal/trimmedLeftIndex');
7 * Removes leading whitespace or specified characters from `string`.
12 * @param {string} [string=''] The string to trim.
13 * @param {string} [chars=whitespace] The characters to trim.
14 * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
15 * @returns {string} Returns the trimmed string.
18 * _.trimLeft(' abc ');
21 * _.trimLeft('-_-abc-_-', '_-');
24 function trimLeft(string, chars, guard) {
26 string = baseToString(string);
30 if (guard ? isIterateeCall(value, chars, guard) : chars == null) {
31 return string.slice(trimmedLeftIndex(string));
33 return string.slice(charsLeftIndex(string, (chars + '')));
36 module.exports = trimLeft;