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

82
Vistas
La función Array.some() no coincidió con undefined
var array = [3,4,5]; delete array[1]; console.log(array); console.log(array[1]); array.some(element => { console.log(element); return element === 3 }) array.some(element => { console.log(element); return element === undefined })

PD: en la imagen a continuación, la array para el código anterior se toma como a y el element se toma como b

ingrese la descripción de la imagen aquí

¿Por qué la función Array.some() no coincidió con undefined en el índice 1? ¿Se maneja indefinido de manera diferente?

about 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

El .some no verifica el índice vacío. El indefinido debe escribirse estáticamente.

 const myArr = [1,,3]; console.log(myArr) myArr.some(elem => console.log(elem)) myArr[1] = undefined; console.log(myArr) myArr.some(elem => console.log(elem))

Si desea detectar índices vacíos

Esto debería funcionar

 const myArr = [1,,3]; function hadEmptyIndex(arr){ for(const member of arr){ if(typeof member === "undefined") return true } return false } console.log(hadEmptyIndex(myArr))

about 4 years ago · Santiago Trujillo Denunciar

0

Esto se debe a que no está iterando sobre valores empty , por lo que realmente no puede verificar si el valor es igual a undefined o no.

Una vez que elimine un elemento de una matriz, los métodos de la matriz, como some , forEach , etc., omitirán el elemento en la iteración.

Lo que puede hacer en su lugar es establecer el elemento en null , luego será iterable:

 var a = [1, 2, 3]; a[0] = null // [ null, 2, 3 ] a.some(b => b === null) // true
about 4 years ago · Santiago Trujillo Denunciar

0

Gran pregunta, la función array.some() solo itera sobre índices con valores asignados,

callbackFn is invoked only for indexes of the array with assigned values. It is not invoked for indexes which have been deleted or which have never been assigned values.

para leer más Lea aquí

about 4 years ago · Santiago Trujillo 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