• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

254
Views
devuelve una cadena donde cada dígito se repite un número de veces igual a su valor

Estoy tratando de resolver un problema: Dada una cadena hecha de dígitos [0-9], devuelve una cadena donde cada dígito se repite un número de veces igual a su valor. Hice la repetición de números, cómo sigue, no lo sé.

 function explode(s) { for (let i=0; i < s.length; i++){ let y = s[i].repeat(s[i]); console.log(y); } }
about 3 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Javascript es bueno para forzar números a una cadena y viceversa, pero prefiero dejar en claro cuándo un carácter numérico se trata como un número y cuándo se pretende que sea una cadena.

Mi fragmento prueba el procesamiento de números, representaciones de cadenas de números, cadenas que tienen mezclas de caracteres de números y letras, y cadenas de letras.

hace uso de array.split() para la matriz de caracteres, array.map() para procesar los caracteres (incluido parseInt para cambiar formalmente el carácter a un número cuando se usa como argumento string.repeat() y array.join() para devolver la cadena numérica deseada después del procesamiento:

 let number = 6789; let numberString = "12345"; let badNum = "3bad2Number"; let noNum = "justLetters"; console.log(expandNums(number)); console.log(expandNums(numberString)); console.log(expandNums(badNum)); console.log(expandNums(noNum)); function expandNums(numOrString) { let numString = numOrString.toString(); let chars = numString.split(''); let processed = chars.map(char => char.repeat(parseInt(char))); return processed.join(''); } // end function expandNums

La función funciona bien en todas las situaciones de uso probadas, por lo que es poco probable que arroje un error si se pasa un argumento incorrecto. También hace un buen trabajo con el ejemplo mixto de letras y números.

about 3 years ago · Juan Pablo Isaza Report

0

Solo te faltaba una cadena de resultados para recopilar las partes.

 function explode(input) { let result = ''; let s = input.toString(); // So that input can also be a number for (let i=0; i < s.length; i++){ let y = s[i].repeat(s[i]); result += y; } return result; }
about 3 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 Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error