Сделайте первую букву оператора массива прописной в JS - PullRequest
2 голосов
/ 07 августа 2020

У меня есть массив, и я хочу преобразовать первую букву в заглавную, используя map

const arrayTOCapital = [
  'hi world',
  'i want help ',
  'change first letter to capital',

 ];

const arrayFirstLetterToCapital = () => {
  return arrayTOCapital.map(function(x){ return 
      x.charAt(0).toUpperCase()+x.slice(1) })
}

Результат должен быть:

Hi World
I Want Help
Change First Letter To Capital

Ответы [ 3 ]

5 голосов
/ 07 августа 2020

Вы можете просто использовать регулярное выражение /\b\w/g, чтобы найти все буквы, которым предшествует граница слова (например, пробел), и заменить их версией с заглавной буквы

const arrayTOCapital = [
  'hi world',
  'i want help ',
  'change first letter to capital',
];

console.log(arrayTOCapital.map(x => x.replace(/\b\w/g, c => c.toUpperCase())));
3 голосов
/ 07 августа 2020

const arrayTOCapital = [
  'hi world',
  'i want help',
  'change first letter to capital'
 ];
 
 const results = arrayTOCapital.map(
   str => str.split(' ').map(s => s[0].toUpperCase() + s.substr(1)).join(' ')
 )
 
 console.log(results);

Вы можете добавить дополнительный .join ('') после последней скобки, если вы хотите составить одно предложение.

3 голосов
/ 07 августа 2020

Вам нужно применить один и тот же лог c к каждому слову в предложениях, а затем join их следующим образом:

const arrayTOCapital = [
  'hi world',
  'i want help ',
  'change first letter to capital',

];

const arrayFirstLetterToCapital = () => { 
     return arrayTOCapital.map(function(x){ 
          return x.split(" ").map(function(y){
               return y.charAt(0).toUpperCase()+y.slice(1);
          }).join(" ");
     });
}

console.log(arrayFirstLetterToCapital());
...