Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Download
80742 views
1
var baseToString = require('../internal/baseToString'),
2
charsRightIndex = require('../internal/charsRightIndex'),
3
isIterateeCall = require('../internal/isIterateeCall'),
4
trimmedRightIndex = require('../internal/trimmedRightIndex');
5
6
/**
7
* Removes trailing whitespace or specified characters from `string`.
8
*
9
* @static
10
* @memberOf _
11
* @category 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.
16
* @example
17
*
18
* _.trimRight(' abc ');
19
* // => ' abc'
20
*
21
* _.trimRight('-_-abc-_-', '_-');
22
* // => '-_-abc'
23
*/
24
function trimRight(string, chars, guard) {
25
var value = string;
26
string = baseToString(string);
27
if (!string) {
28
return string;
29
}
30
if (guard ? isIterateeCall(value, chars, guard) : chars == null) {
31
return string.slice(0, trimmedRightIndex(string) + 1);
32
}
33
return string.slice(0, charsRightIndex(string, (chars + '')) + 1);
34
}
35
36
module.exports = trimRight;
37
38