2010-10-26 5 views

Répondre

6

Oui, ils sont partagés. Pour les propriétés séparées, définissez-les à l'intérieur du constructeur:

function Ctor() { 
    this.notShared = 1; 
}; 

Ctor.prototype.shared = 2; 
+0

comment accéder à ce.notShared? à l'intérieur de prototype.init? – coure2011

+0

'this.notShared', mais vous devez appeler le constructeur avant d'appeler' init'. –

+1

Cet exemple est légèrement déroutant. 'var o1 = nouveau Ctor(); var o2 = nouveau Ctor(); o1.shared + = 1; console.log ("o1.shared =" + o1.shared + ", o2.shared =" + o2.shared); 'donne' o1.shared = 3, o2.shared = 2'. Je sais que c'est évident, mais le sens ** partagé ** ne ressort pas de cet exemple. Ce serait mieux si l'exemple démontrait l'état partagé en utilisant 'Ctor.prototype.shared = {}' –

Questions connexes