Solución
solution.tsTypeScript
function countUniqueWords(sentence: string): number {
// remove items wihout items
if(sentence === '') return 0
// normalize data and separe
const _list = sentence.toLocaleLowerCase().split(' ')
/**
* Se puede utilizar el metodo reduce para evitar crear listas externas o variables.
* current y prev representan item actual del array de sentences
* y prev el estado actual de la lista que se encuentra dentro del reduce.
* Como prev es un array, se puede usar los metodos generales de los array
* Se verifica si contiene un item igual a la muestra "Current"
* Si la tiene pasamos a siguiente elemento; caso contrario se agrega el item actual "current".
*/
const optimaceList = _list.reduce((prev,current )=>{
if(!prev.includes(current)) prev.push(current)
return prev
},[])
return optimaceList.length
}
// No modificar: necesario para evaluar el resultado.
export { countUniqueWords };0respuestas