js сделать первую букву заглавной

Аватар пользователя Кирилл Маркеев
Кирилл Маркеев
28 марта 2023

Предлагаю рассмотреть вопрос на конкретном примере:

const text = 'это предлОжение, в КОТОРОМ пЕРВУЮ бУкВу каЖДого словА нужно СдеЛатЬ Заглавной';

const result = text
  // преобразуем строку в массив слов 
  .split(' ')
  // обходим массив, у каждого элемента первую букву делаем заглавной, остальные приводим к нижнему регистру 
  .map((word) => `${word[0].toUpperCase()}${word.slice(1).toLowerCase()}`)
  // преобразуем массив обратно в строку
  .join(' ');

console.log(result); // => Это Предложение, В Котором Первую Букву Каждого Слова Нужно Сделать Заглавной

Также можно воспользоваться функцией  capitalize() из библиотеки lodash. Это сделает код более лаконичным и читаемым:

import { capitalize } from 'lodash';

const resultWithLodash = text
  .split(' ')
  .map((word) => capitalize(word))
  .join(' ');

console.log(resultWithLodash); // => Это Предложение, В Котором Первую Букву Каждого Слова Нужно Сделать Заглавной
0 0
Аватар пользователя Vadim Bobryakov
Vadim Bobryakov
04 июня 2023

а на втором шаге можно вместо .map использовать .filter ?

0 0