Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

275
Views
Cómo unir cadenas condicionalmente sin usar let in javascript

Tengo una situación en la que intento unirme a la matriz de cadenas solo si tiene un valor. Lo hice usando la variable let, pero me pregunto si puedo hacer esto usando el mapa. Soy muy consciente de la posición, así que lo usé de esta manera.

 const [hours, minutes, seconds] =["", "10", ""] let time = ""; if (hours) { time += `${hours}h `; } if (minutes) { time += `${minutes}m `; } if (seconds) { time += `${seconds}s`; } console.log(time)

¿Podré hacer esto usando el mapa, filtrar y unirme?

about 4 years ago · Juan Pablo Isaza
3 answers
Answer question

0

Si vuelve a colocar las horas, los minutos y los segundos en una matriz, puede crear otra matriz para los sufijos, agregar los sufijos asignando los valores y luego filtrar las subcadenas resultantes que tienen 1 carácter o menos (lo que indicaría que hay no era un valor correspondiente).

 const suffixes = ['h', 'm', 's']; const [hours, minutes, seconds] = ["", "10", ""]; // combine this with the next line if you can const hms = [hours, minutes, seconds]; const time = hms .map((value, i) => value + suffixes[i]) .filter(substr => substr.length > 1) .join(' '); console.log(time)

about 4 years ago · Juan Pablo Isaza Report

0

Aquí hay un pequeño fragmento agradable

 const suffixs = "hms"; // String arrays of single characters can be shortened to this! const values = ["","10",""]; var string = values .map((x,i) => x ? x + suffixs[i] : x) .filter(x => x) .join(" "); console.log(string); // Or if you want to have 0 in place of empty values var string2 = values .map((x,i) => (x || "0") + suffixs[i]) .join(" "); console.log(string2);

about 4 years ago · Juan Pablo Isaza Report

0

Personalmente, crearía una lista de objetos que representen el tiempo.

Prefiero esto a usar dos matrices, ya que puede salvar algunos errores (como cambiar el orden de los datos en una lista pero no en la otra):

 const [hours, minutes, seconds] = ["20", "10", ""]; const time = [ { amount: hours, sign: "h" }, { amount: minutes, sign: "m" }, { amount: seconds, sign: "s" }, ]; const str = time .filter((val) => val.amount) .map((val) => val.amount + val.sign) .join(" "); console.log(str);

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!