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

211
Vistas
matriz[i].(dividir) no es una función

Tratando de clasificar una variedad de artistas que vivieron durante el siglo XX. Los números en la propiedad year de la matriz son cadenas en lugar de números:
"years" : "1471 - 1528" Así que estoy tratando de dividir todos los años, convertirlos en números y luego comparar los números de esa manera. Pero cuando inicio sesión en la consola, aparece un error que dice "array[i].split is not a function". array.years.split(" ") y también obtuve un error. Solo estoy aprendiendo JS, así que tengan paciencia conmigo si es un error obvio, pero ¿alguien puede decirme qué estoy haciendo mal? Aquí hay una parte de la matriz:

 const artists = [ { "name": "artist name", "years": "1884 - 1920"} , ... ] function getYears (array) { const newArray = []; for (let i = 0; i < array.length; i++) { const splitYears = array[i].split(" "); splitYears.splice("-") Math.floor(splitYears); if (splitYears[0] > 1900 && splitYears[1] < 2000) { return newArray.push(array[i].name); } } return newArray; } console.log(getYears(artists));
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Solo lo adivino porque no está mostrando el contenido completo de la matriz, pero sospecho que quiere algo más cercano a:

array[i].year.split(" ")

Además, en lugar de dividir en los espacios, tendría más sentido dividir los espacios y el guión juntos, usando una expresión regular que no se preocupa por cuántos espacios (si los hay) están presentes:

array[i].year.split(/\s*-\s*/)

Lo anterior devolverá una matriz de un solo elemento cuando hay un año, una matriz de dos elementos cuando se da un rango de años.

Un paso más sería convertir la matriz en números en lugar de cadenas:

array[i].year.split(/\s*-\s*/).map(n => parseInt(n, 10))

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