Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

330
Vistas
¿Cómo escribo una función en JS para devolver la abreviatura de las palabras?

Por ejemplo:

 makeAbbr('central processing unit') === 'CPU'

No pude encontrar mi error. Aprecio tu ayuda.

 function makeAbbr(words) { let abbreviation = words[0]; for (let i = 1; i < words.length; i++) { if (words[i] === '') { abbreviation += words[i + 1]; } } return abbreviation.toUpperCase(); } console.log(makeAbbr('central processing unit'));

about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

Solo necesita cambiar las words[i] === '' en words[i] === ' ' . '' es una cadena vacía.

Otra opción es dividir la cadena pasada.

 function makeAbbr(str) { // words is [ "central", "processing", "unit" ] let words = str.split(/\s+/); let abbreviation = ''; for (let i = 0; i < words.length; i++) { abbreviation += words[i][0]; } return abbreviation.toUpperCase(); }
about 4 years ago · Juan Pablo Isaza Denunciar

0

Esto generalmente funcionará en la abreviatura de palabras que usan el primer carácter de cada palabra separado por un espacio.

 function makeAbbr(words) { // result abbreviation let abbreviation = ''; // store each word into an array using split by space let wordArray = words.split(' '); // iterate through the word array for (let i = 0; i < wordArray.length; i++) { // take the first character in each word into the result abbreviation abbreviation += wordArray[i][0]; } // return the abbreviation with all of them being upper case return abbreviation.toUpperCase(); } // test case console.log(makeAbbr('central processing unit'));

about 4 years ago · Juan Pablo Isaza Denunciar

0

Una solución de una línea:

 function makeAbbr(words) { return words.split(' ').map(word => word[0].toUpperCase()).join(""); } console.log(makeAbbr('central processing unit'));

Estamos convirtiendo la oración de string en una matriz de palabras separadas por un espacio ( .split(" ") ), luego mapeando o transformando cada palabra en la matriz a su primera letra, así como capitalizándola: .map(word => word[0].toUpperCase()) , luego une los elementos de la matriz en una cadena con "nada" "" como separador:

"central processing unit" -> ["central", "processing", "unit"] -> ["C", "P", "U"] -> "CPU"

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda