Вот так нагляднее будет
var arr = [];
arr.test = function () {};
arr[4] = 4;
arr[9] = 9;
arr[5] = 'Text';
arr[8] = 9000;
console.log(
arr.join().split(/\d+/).length - 1,
Object.keys(arr).length,
arr.join("").length,
arr.join().replace(/\,{2,}/g, ',').replace(/^\,|\,$/g,'').split(',').length
);
alert(arr);