• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
    • Preguntas
    • Profesores
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Pruebas Online
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

92
Vistas
Function take in array of string return only strings with that have number(s) in them. Or return empty array if none

The function has 1 parameter: an array. It should iterate through the array and return strings that contain a number in them. If none of them have an number it will return an empty array.

The code I have written so far seems too verbose. Sometimes it does not return the correct value. I am looking for any ways to shorten the code or improve it.

function numInStr(arr) {
    var stringsWithNum = [];
  for(var x = 0; x < arr.length - 1; x++) {
    for (var y = 0; y < arr[x].length - 1;y++) {
      //console.log(typeof arr[x][y]);
            if('0123456789'.indexOf(arr[x][y]) !== -1) {        
                stringsWithNum.push(arr[x]);
        break;              
      }
    }
  }
  return stringsWithNum;
}
almost 3 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

You can shorten your code considerably by using .filter() to filter out the elements containing numbers, and using .match() to test whether the elements contain a number.

This eliminates the need to create and maintain (and possibly incorrectly set) array indexes.

function numInStr(arr) {
    return arr.filter(function (elmt) {
        return elmt.match(/\d/)
    })
}

console.log(numInStr(['foo', 'ab12', '34asdf', 'bar']))
// Array [ "ab12", "34asdf" ]
almost 3 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 Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda