2010-09-14 5 views
1

Salut actuellement je suis en train d'obtenir extrait suivant du code pour:Impossible d'obtenir tableau JavaScript pour fonctionner dans le style POO

function Entry() { 
    var pauses = new Array(); 
} 

Entry.prototype = { 
    AddElement: function(aParameter) { 
     this.pauses.push(aParameter); 
    } 
} 

Malheureusement ce code échoue avec l'erreur suivante dans Safari si je tente d'appeler AddElement ("Test"); TypeError: Résultat de l'expression 'this.pauses' [undefined] n'est pas un objet.

Est-ce que quelqu'un sait pourquoi?

Répondre

1

Dans votre code, pauses est une variable locale de la fonction Entry(), pas un membre de l'objet construit par elle. Vous souhaitez remplacer var pauses = ... par this.pauses = ....

1

changement

var pauses = new Array(); 

à

this.pauses = new Array(); 

ou, mieux

this.pauses = []; 
+0

Quelle est la différence entre new Array() et []? –

Questions connexes