How to Uppercase Strings in JavaScript
The built-in way of capitalizing strings in JavaScript is using the toUpperCase()
function, which capitalizes the whole string.
let string = 'masteringjs.io'
string.toUpperCase(); // MASTERINGJS.IO
Capitalizing the First Letter
To capitalize the first letter, the code gets much busier.
Using a combination of toUpperCase()
, charAt()
, and slice()
, you can capitalize the first letter of a word.
const str = 'captain Picard';
const caps = str.charAt(0).toUpperCase() + str.slice(1);
caps; // 'Captain Picard'
To capitalize the first letter of every word in a string, you must use a combination of join()
, map()
, split()
, as well as the steps used in the previous example.
const str = 'captain picard';
function capitalize(str) {
return str.charAt(0).toUpperCase() + str.slice(1);
}
const caps = str.split(' ').map(capitalize).join(' ');
caps; // 'Captain Picard'
Locale Capitalization
JavaScript uses different capitalization rules based on the locale of your system.
In most cases, the locale doesn't matter for capitalization.
But there are some edge cases, like the famous dotless I in Turkish and some other Turkic languages.
If these edge cases are important for your app, you can use toLocaleUpperCase()
and specify the locale you want to use.
// In most cases, capitalization works correctly regardless of locale
'cafetería'.toLocaleUpperCase('en-US'); // CAFETERÍA
'cafetería'.toLocaleUpperCase('es-ES'); // CAFETERÍA
// But there are edge cases, like dotted I in some Turkic languages
'i'.toLocaleUpperCase('en-US'); // I
'i'.toLocaleUpperCase('tr-tr'); // İ
In general, we recommend using toUpperCase()
and not worrying too much about locale.
More Fundamentals Tutorials
- Convert a Set to an Array in JavaScript
- What Does Setting the Length of a JavaScript Array Do?
- Get the Last Element in an Array in JavaScript
- Skip an Index in JavaScript Array map()
- Conditionally Add an Object to an Array in JavaScript
- Validate Emails using Regex in JavaScript
- JavaScript Copy to Clipboard