Ну а что вы хотели, вы создаете массив из шести элементов.. и при этом хотите получить только реальные, тоесть назначенные... И конечно же получить/подсчитать их можно только перебором.
var massive= new Array();
massive[1]="слово1";
massive[3]="слово2";
massive[5]="слово3";
var length = 0;
for(var k in massive ) {
~~k == k && ++length;
}
alert(length);