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

509
Vistas
¿Cómo hacer abreviaturas/acrónimos en JavaScript?

nuevo en la codificación , estoy tratando de hacer una función que haga "abreviaturas/acrónimos" de palabras, por ejemplo, 'Te amo' -> 'ily'. Intenté reescribir el código de muchas maneras, pero console.log solo me muestra la primera letra de la primera palabra dada.

 function makeAbbr(words) { let abbrev = words[0]; let after = 0; let i = 0; for (const letter of words) { if (letter === '') { i = words.indexOf('', after); abbrev += words[i + 1]; } after++; } return abbrev; } const words = 'a bc def'; let result = makeAbbr(words); console.log(result)

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

0

Sin utilizar matrices. Pero realmente deberías aprender sobre ellos.

  1. Comience recortando los espacios en blanco iniciales y finales.
  2. Agregue el primer carácter a su acrónimo.
  3. Recorra el resto de la cadena y agregue el carácter actual al acrónimo si el carácter anterior era un espacio (y el carácter actual no lo es).

 function makeAbbr(words) { words = words.trim(); const length = words.length; let acronym = words[0]; for(let i = 1; i < length; i++) { if(words[i - 1] === ' ' && words[i] !== ' ') { acronym += words[i]; } } return acronym; } console.log(makeAbbr('I love you')); console.log(makeAbbr('I love you')); console.log(makeAbbr(' I love you '));


Y aquí está la versión para GottZ

 function w(char) { char = char.toLocaleLowerCase(); const coll = Intl.Collator('en'); const cmpA = coll.compare(char, 'a'); const cmpZ = coll.compare(char, 'z'); return cmpA >= 0 && cmpZ <= 0; } function makeAbbr(words) { words = words.trim(); const length = words.length; if(!length) return ''; let acronym = words[0]; for(let i = 1; i < length; i++) { if(!w(words[i - 1]) && w(words[i])) { acronym += words[i]; } } return acronym; } console.log(makeAbbr('I love you')); console.log(makeAbbr('I love you')); console.log(makeAbbr(' I love you ')); console.log(makeAbbr(' \tI ... ! love \n\r .you ')); console.log(makeAbbr(' \tI ... ! Löve \n\r .ÿou '));

about 4 years ago · Juan Pablo Isaza Denunciar

0

aquí está mi implementación de su función: divida la oración en una matriz, obtenga la primera letra de cada palabra y únalas en una cadena.

 const makeAbbr = string => string.split(' ').map(word => word[0]).join(''); console.log(makeAbbr('stack overflow')); console.log(makeAbbr('i love you'));

`

about 4 years ago · Juan Pablo Isaza Denunciar

0

Como quería algo usando su enfoque, intente esto (el código está comentado)

 function makeAbbr(words) { let abbrev = ""; for (let i = 0; i < words.length - 1; i++) { // Loop through every character except the last one if (i == 0 && words[i] != " ") { // Add the first character abbrev += words[i]; } else if (words[i] == " " && words[i + 1] != " ") { // If current character is space and next character isn't abbrev += words[i + 1]; } } return abbrev.toLowerCase(); } const words = 'a bc def'; let result = makeAbbr(words); console.log(result)

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