Learning Advanced JavaScript
#67 "Prototyped properties affect all objects of the same constructor, simultaneously, even if they already exist"<p>This is only true for properties created as new properties on the existing prototype (Ninja.prototype.swingSword = ...). It is not true if you assign a new object to the prototype (Ninja.prototype = { 'swingSword' : ...}).<p>The existing objects will only see new properties added to the object which was constructor's prototype at their creation time.