saber repetidos objects index existe elementos elemento ejemplo contar buscar array javascript arrays multidimensional-array

repetidos - javascript indexof array of objects



Verifique la longitud de las matrices multidimensionales con Javascript (3)

Esos no son arreglos. Son objetos, o al menos están siendo tratados como objetos. Incluso si son instancias de Array, en otras palabras, la "longitud" solo rastrea la propiedad más grande indexada numérica.

JavaScript realmente no tiene un tipo de "matriz asociativa".

Puede contar el número de propiedades en una instancia de objeto con algo como esto:

function numProps(obj) { var c = 0; for (var key in obj) { if (obj.hasOwnProperty(key)) ++c; } return c; }

Las cosas se vuelven un poco complicadas cuando tienes cadenas de herencia, etc., y tienes que averiguar qué quieres que la semántica de eso se base en tu propia arquitectura.

Posible duplicado:
Longitud de la matriz asociativa de Javascript

Quiero verificar la longitud de una matriz multidimensional pero me sale "indefinido" como retorno. Supongo que estoy haciendo algo mal con mi código, pero no puedo ver nada extraño al respecto.

alert(patientsData.length); //undefined alert(patientsData["XXXXX"].length); //undefined alert(patientsData["XXXXX"][''firstName'']); //a name fruits = ["Banana", "Orange", "Apple", "Mango"]; alert(fruits.length); //4

¿Pensamientos? ¿Podría esto tener algo que ver con el alcance? La matriz se declara y configura fuera de la función. ¿Podría esto tener algo que ver con JSON? Creé la matriz a partir de una declaración eval (). ¿Por qué la matriz ficticia funciona bien?


Parece que no está utilizando una matriz anidada, pero está utilizando objetos anidados en objetos porque está accediendo a los miembros por sus nombres (en lugar de índices).


.length solo funciona en arreglos. No funciona en arrays / objetos asociativos.

patientsData["XXXXX"] no es una matriz. Es un objeto. Aquí hay un ejemplo simple de su problema:

var data = {firstName: ''a name''}; alert(data.length); //undefined