- From: Cameron McCormack <cam@mcc.id.au>
- Date: Wed, 19 Mar 2008 10:30:51 +1100
- To: "Web APIs WG (public)" <public-webapi@w3.org>
Travis Leithead: > Since this spec is presumably creating a language binding for > JavaScript, Yes, since ECMAScript ≈ JavaScript (for some value of JavaScript). > (and assuming interface objects are Functions, as seen by > Opera), As mentioned in my previous e-mail, I think that assumption is false. An object does not need to be a Function to be able to be used on the right-hand side of the ‘new’ operator, though. The object just needs to implement [[Construct]]. > then why does: > > var div = new HTMLDivElement(); > > produce a script error? As Anne says, it’s because the object doesn’t have a constructor. > Seems like a perfectly valid thing to do, essentially a shortcut to > document.createElement('div') In the new IDL, you could write [Constructor] interface HTMLDivElement : … { … }; if you wanted to indicate that the interface object must implement [[Construct]]. Whether this is something that is desired on HTMLDivElement would be something for the HTML WG to decide, since they will publish the IDL for HTML 5. -- Cameron McCormack, http://mcc.id.au/ xmpp:heycam@jabber.org ▪ ICQ 26955922 ▪ MSN cam@mcc.id.au
Received on Tuesday, 18 March 2008 23:31:39 UTC