Estoy trabajando en alguna práctica de map() y estoy atascado. Estoy tratando de poner en mayúscula la primera letra de cada palabra.
Creo que estoy siguiendo la sintaxis correcta para charAt() pero está obteniendo word.charAt() no es una función.
const titleCased = () => { const cased = tutorials.map((string) => { return string.split(' ') }) let newCase = cased.forEach((word) => { return word.charAt(0).toUpperCase() + word.slice(1) }) return newCase }
No estoy buscando una respuesta, ¡realmente quiero resolverlo yo mismo!
Sin embargo, con suerte alguien me puede dar algunos consejos, cuando ejecuto mi depurador, también omite por completo newCase. Estoy seguro de que estoy malinterpretando mi alcance.
tutoriales variable para ref.
const tutorials = [ 'what does the this keyword mean?', 'What is the Constructor OO pattern?', 'implementing Blockchain Web API', 'The Test Driven Development Workflow', 'What is NaN and how Can we Check for it', 'What is the difference between stopPropagation and preventDefault?', 'Immutable State and Pure Functions', 'what is the difference between == and ===?', 'what is the difference between event capturing and bubbling?', 'what is JSONP?', ]
EDITAR: Actualizar
Entonces aquí es donde obtuve, Phil (abajo) mencionó que mi función forEach() original ahora map() no hace nada con el valor de retorno de la devolución de llamada.
Soy muy nuevo y hago lo mejor que puedo, me cuesta entender cómo relacionar el valor de retorno.
const titleCased = () => { const cased = tutorials.map((string) => { return string.split(' ') }) let newCase = cased.map((word) => { return word[0].charAt(0).toUpperCase() + word[0].slice(1) }) return newCase }
finalmente hice la cosa
function titleCased() { const cased = tutorials.map((cb) => { const newCase = cb .split(' ') .map((word) => { return word.charAt(0).toUpperCase() + word.slice(1) }) .join(' ') return newCase }) return cased }