This is for a very specific use case. And this is all in typescript (which for this use case I think it has no impact but I mention it in case it does).
And the answer is - bad in Chrome & Opera, very bad in Firefox, horribly bad in IE. We did performance testing of copy constructors vs setting the prototype.