- From: Brendan Eich <brendan@mozilla.org>
- Date: Mon, 22 Aug 2011 23:05:31 -0700
- To: Cameron McCormack <cam@mcc.id.au>
- Cc: David Flanagan <dflanagan@mozilla.com>, public-script-coord@w3.org
On Aug 22, 2011, at 8:31 PM, Cameron McCormack wrote: > Does that mean you consider this native JS function not to be a "true constructor": > > function F() { > return { }; > } > > ? Although with some implementations it might be less efficient to use new to invoke these constructors, I don't think it's going to be significant. Implementations could well optimise these cases anyway. I'm not sure these notes would be useful. All the finest ;-) optimizing JS VMs avoid making a new Object instance for new F. >> 3) §4.5.2 doesn't say anything about the prototype property of a named >> constructor function. Shouldn't it have one, and shouldn't it have the >> same value as the prototype property of the interface object? (Note that >> FF and Chrome do not do this for Image(), but Safari does) > > Safari/IEPP: Image.prototype == HTMLImageElement.prototype > Chrome: Image.prototype.[[Prototype]] == HTMLImageElement > Firefox: Image.prototype.[[Prototype]] == HTMLElement.prototype > Opera: Image.prototype === undefined > > I agree, the Safari/IE behaviour makes most sense to me. Agreed. /be
Received on Tuesday, 23 August 2011 06:06:20 UTC