Solo me pregunto, cuando usas array.length
, obtiene el último valor de índice y agrega uno. ¿Qué pasa si usted tiene una matriz, que se define de esta manera por alguna razón:¿Cuál es la mejor manera de contar la longitud absoluta de la matriz en JavaScript?
var myArray2 =[];
myArray2[10]='x';
myArray2[55]='x';
¿Cuál es la manera más favorable para obtener la longitud real de esta matriz? Algo que devolvería 2 como el valor.
Estaba pensando algo como esto, pero no estoy seguro si ya había un método para esto, o si hay una implementación más rápida.
Array.prototype.trueLength= function(){
for(var i = 0,ctr=0,len=myArray2.length;i<len;i++){
if(myArray2[i]!=undefined){
ctr++;
}
}
return ctr;
}
console.log(myArray2.trueLength());
Bueno, eso es elegante. –
Niza. por supuesto, usted' d necesita una implementación de 'Array.prototype.reduce' para IE <9 –
@TimDown Compen saciado por eso (y algunos más). – Zirak