Как сделать первую букву заглавной
Короткий ответ
Готового метода нет. Первую букву переводят в верхний регистр и приклеивают к ней остаток строки:
const text = 'hello';
console.log(text[0].toUpperCase() + text.slice(1));Результат:
HelloОтдельная функция
Проверка на пустую строку нужна, чтобы не обратиться к несуществующему символу:
function capitalize(text) {
if (text === '') {
return text;
}
return text[0].toUpperCase() + text.slice(1);
}
console.log(capitalize('hello world'));
console.log('[' + capitalize('') + ']');Результат:
Hello world
[]Каждое слово
Разбейте строку на слова, обработайте каждое и склейте обратно:
const title = 'john smith'
.split(' ')
.map((word) => word[0].toUpperCase() + word.slice(1))
.join(' ');
console.log(title);Результат:
John SmithЧастая ошибка
Остальная часть строки сохраняет свой регистр. Если на входе могут быть заглавные буквы, сначала переведите остаток в нижний регистр:
const text = 'hELLO';
console.log(text[0].toUpperCase() + text.slice(1));
console.log(text[0].toUpperCase() + text.slice(1).toLowerCase());Результат:
HELLO
HelloФункции из этого ответа
- String.prototype.toUpperCase — Переводит строку в верхний регистр.
- String.prototype.slice — Возвращает часть строки.
- String.prototype.toLowerCase — Переводит строку в нижний регистр.