Remove trailing character(s) from string in Javascript

What is an acceptable way to remove a particular trailing character from a string?

For example if I had a string:

> "item,"

And I wanted to remove trailing ','s only if they were ','s?

Thanks!


Solution 1:

Use a simple regular expression:

var s = "item,";
s = s.replace(/,+$/, "");

Solution 2:

if(myStr.charAt( myStr.length-1 ) == ",") {
    myStr = myStr.slice(0, -1)
}

Solution 3:

A function to trim any trailing characters would be:

function trimTrailingChars(s, charToTrim) {
  var regExp = new RegExp(charToTrim + "+$");
  var result = s.replace(regExp, "");

  return result;
}

function test(input, charToTrim) {
  var output = trimTrailingChars(input, charToTrim);
  console.log('input:\n' + input);
  console.log('output:\n' + output);
  console.log('\n');
}

test('test////', '/');
test('///te/st//', '/');