rtrim.js 632 B

12345678910111213141516171819202122232425262728
  1. exports = function(str, chars) {
  2. if (chars == null) {
  3. if (str.trimRight) {
  4. return str.trimRight();
  5. }
  6. chars = ' \r\n\t\f\v';
  7. }
  8. var end = str.length - 1;
  9. var charLen = chars.length;
  10. var found = true;
  11. var i;
  12. var c;
  13. while (found && end >= 0) {
  14. found = false;
  15. i = -1;
  16. c = str.charAt(end);
  17. while (++i < charLen) {
  18. if (c === chars[i]) {
  19. found = true;
  20. end--;
  21. break;
  22. }
  23. }
  24. }
  25. return end >= 0 ? str.substring(0, end + 1) : '';
  26. };
  27. module.exports = exports;