Задачка с символами - сделать заглавными
Затыкаю пробелы в основах JS, обнаружил что пропустил тему с символами charAt().
Вроде ничего сложного и легко запоминается, но не могу решить такую простую задачку: Нужно написать функцию принимающую массив из слов, которая первый символ каждого слова из массива сделает заглавными буквами и вернёт массив строкой. Пишу код: function strok(arr) { for (let i = 0; i < arr.length; i++) { arr[i].charAt(0) = arr[i].charAt(0).toUpperCase(); } return arr.join(' '); } console.log(strok(['наша', 'маша', 'громко', 'плачет'])); получаю ошибку. Покажите пжл, как правильно сделать. |
MC-XOBAHCK,
charAt это только get, но не set. |
Цитата:
|
Спасибо за объяснение!
По началу я завис и ещё попробовал вместо массива переменную прокачать: function hello(name) { name.charAt(0) = name.charAt(0).toUpperCase(); return `Здравствуй, ${name}`; } console.log(hello('гость')); Сдаваться не стал и попробовал добавить переменную : ) function hello(name) { let up = name.charAt(0).toUpperCase(); name.charAt(0) = up; return `Здравствуй, ${name}`; } console.log(hello('гость')); Потом ещё раз перечитал ответы и понял смысл написанного. Геттеры и сеттеры - как раз вчера начал углубляться в эту тему, но нужно некоторое время и практика чтоб всё отложилось. Планирую после освоения get/set начать знакомиться с React, думаю тогда уже можно будет. Спасибо! |
Цитата:
|
MC-XOBAHCK,
function strok(arr) { return arr.map(a => (a = [...a], a[0] = a[0].toUpperCase(), a.join(''))).join(' '); } console.log(strok(['наша', 'маша', 'громко', 'плачет'])); |
Цитата:
1 |
рони,
Ну да... Я по складам... Чтобы понятно - где что. Похоже, переборщил... |
Часовой пояс GMT +3, время: 19:50. |