1 var baseToString = require('../internal/baseToString'),
2 charsRightIndex = require('../internal/charsRightIndex'),
3 isIterateeCall = require('../internal/isIterateeCall'),
4 trimmedRightIndex = require('../internal/trimmedRightIndex');
7 * Removes trailing 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 * _.trimRight(' abc ');
21 * _.trimRight('-_-abc-_-', '_-');
24 function trimRight(string, chars, guard) {
26 string = baseToString(string);
30 if (guard ? isIterateeCall(value, chars, guard) : chars == null) {
31 return string.slice(0, trimmedRightIndex(string) + 1);
33 return string.slice(0, charsRightIndex(string, (chars + '')) + 1);
36 module.exports = trimRight;