.push () mehrere Objekte in JavaScript-Array gibt "undefined" zurück

Wenn ich Elemente zum Beats-Array hinzufüge und den Benutzer dann console.log, erhalte ich die richtige Anzahl von Elementen im Array. Aber wenn ich .length überprüfe, erhalte ich immer 1. Wenn ich versuche, den Index aufzurufen, erhalte ich immer 'undefiniert' wie folgt:Tom.beats[1] Ich denke, ich vermisse etwas Offensichtliches, aber das schlägt mich. Ich vermute, dass ich das missbrauche.push Methode, aber ich bin nicht sicher. Jede Hilfe wird sehr geschätzt! (mit Chrome dev tools)

//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]);

Antworten auf die Frage(3)

Ihre Antwort auf die Frage