Nunca dije que fuera la funcion incorrecta, solo que el codigo esta mal escrito y es falso que .length "comienze a contar desde cero".
Código Javascript
:
Ver originalvar un_array = [23,14,16];
alert(un_array.length) // retorna "3"
Length es una propiedad, no una funcion.