私はコンストラクタ内からオブジェクトの配列を構築しようとしています。私はそれが可能であるか、または推奨されているかわからない。しかし、私は練習のためにこれを構築しようとしています、なぜそれが動作していないのだろうか。コンストラクタから単純なJavaScriptで配列にプッシュ
// Variables.
const VVD = new Party("VVD", 33);
// List of objects.
var theList = [];
// Party constructor.
function Party(name, seats) {
\t this.name = name;
\t this.seats = seats;
\t //theList.push(this); // This isn't working.
\t this.pushToTheList = function() {
\t \t theList.push(this);
\t }
\t this.pushToTheList(); // And neither is this.
}
これは私が取得していますエラーです:Uncaught TypeError: Cannot read property 'push' of undefined
を私は"test"
でthis
を交換する場合でも、私はまだ同じエラーを取得しています。
コンストラクタの外で、これは正常に動作している間: theList.push(VVD);
をなぜこの作業ではないでしょうか?オブジェクトを配列にプッシュする、より良い、スマートな方法がありますか?
CodePenへのリンク:http://codepen.io/MichaelVanDenBerg/pen/gmXZej
'関数Party'は*掲揚*ことを起こります。 'theList = []'はそうではありません。 – deceze