.push () wiele obiektów w tablicy JavaScript zwraca 'undefined'

Gdy dodaję elementy do tablicy beats, a następnie console.log użytkownika, otrzymuję prawidłową liczbę elementów w tablicy. Ale kiedy sprawdzam .length, zawsze otrzymuję 1. Próba wywołania indeksu zawsze daje mi „niezdefiniowane” w ten sposób:Tom.beats[1] Myślę, że tęsknię za czymś oczywistym, ale to mnie bije. Podejrzewam, że źle używam.push metoda, ale nie jestem pewien. Każda pomoc jest bardzo mile widziana! (używa narzędzi Chrome dev)

//The USER

function User(name, role){
    this.beats = [ ]; 

    this.name = name;
    this.role = role;

    // add beats to beats array

    this.addBeats = function(beats){ 
        return this.beats.push(beats);
   };

}

// Three New Instances. Three New Users.

var Mal = new User("Mal", "Rapper");
Mal.addBeats(["love", "cash"]);

var Dan = new User("Dan", "Producer");
Dan.addBeats(["cake", "dirt", "sally-mae"]);

var Tom = new User("Tom", "Producer");
Tom.addBeats(["Fun", "Little", "Samsung", "Turtle", "PC"]);

// Check for position in beats array

console.log(Tom.beats); 
console.log(Mal.beats); 
console.log(Dan.beats); 

console.log(Mal.beats[1]);
console.log(Dan.beats[1]);
console.log(Tom.beats[1]);

questionAnswers(2)

yourAnswerToTheQuestion