651 B
651 B
We can't "replace" the first character, because strings in JavaScript are immutable.
But we can make a new string based on the existing one, with the uppercased first character:
let newStr = str[0].toUpperCase() + str.slice(1);
There's a small problem though. If str
is empty, then str[0]
is undefined, so we'll get an error.
There are two variants here:
- Use
str.charAt(0)
, as it always returns a string (maybe empty). - Add a test for an empty string.
Here's the 2nd variant:
function ucFirst(str) {
if (!str) return str;
return str[0].toUpperCase() + str.slice(1);
}
alert( ucFirst("john") ); // John