Le 21/06/2012 17:05, Brendan Eich a écrit : > Boris Zbarsky wrote: >>> So in Firefox, instanceof can be used with browser API (DOM + >>> localStorage + XHR + whatev's is built-in to the browser) >> >> Stop right there. ;) XHR has been switched to WebIDL bindings >> already (to ship in Firefox 14 in a few weeks), so you _can't_ use >> instanceof there anymore. Other things will be following. Hence >> this thread.... > > Seems better to discuss and possibly revise WebIDL (and ES6, but see > below -- it may be ready!) first, then change Gecko, but sounds like > time is short to undo the change. > >>> Of course. Then +1000 for changing how instanceof is defined in WebIDL >>> to adopt Gecko behavior! >> >> The point is WebIDL can't do that on its own: there is nothing in ES5 >> for it to hook into, as far as I know. This needs coordination >> between WebIDL and the ES spec. > > See [[NativeBrand]] in ES6 drafts including latest at > > http://wiki.ecmascript.org/doku.php?id=harmony:specification_drafts I don't think a naive use of [[NativeBrand]] will be enough. First, [[NativeBrand]] is unused in instanceof. Then, a document will certainly have a [[NativeBrand]] of 'HTMLDocument' and returning 'true' for "document instanceof Node" is a bit far off. But certainly that by making instanceof use [[NativeBrand]] and allowing WebIDL to hook something to make the connection between different [[NativeBrand]]s could do the trick. I'll try to think about it and come up with an actual proposal. DavidReceived on Thursday, 21 June 2012 15:42:01 UTC
This archive was generated by hypermail 2.3.1 : Wednesday, 8 May 2013 19:30:06 UTC