W3C home > Mailing lists > Public > public-script-coord@w3.org > July to September 2012

Re: "var" declarations shadowing properties from Window.prototype

From: Boris Zbarsky <bzbarsky@MIT.EDU>
Date: Sun, 12 Aug 2012 12:40:32 -0400
Message-ID: <5027DC80.5040102@mit.edu>
To: Jonas Sicking <jonas@sicking.cc>
CC: Allen Wirfs-Brock <allen@wirfs-brock.com>, Brendan Eich <brendan@mozilla.org>, public-script-coord@w3.org, es-discuss@mozilla.org
On 8/10/12 9:00 PM, Jonas Sicking wrote:
> One potential solution that I think we should keep in mind is to
> declare that WebIDL properties *on global objects* doesn't go on the
> prototype chain, but rather on the global objects themselves.
...
> It also has the advantage that Chrome already does this

Chrome does this for some properties (attributes) but not others 
(operations).

I assume you just meant to do this for attributes?  Those are the only 
cases in which var would call setters, obviously.

The var shadowing issue is an issue for operations too, of course, but 
it sounds like that's being solved on the ES side.

I can live with putting attributes directly on the global.  If we ever 
add an attribute to EventTarget that will be a little weird because 
hooking the getter or setter on EventTarget.prototype will affect all 
event targets _except_ the global, but that's life.

-Boris
Received on Sunday, 12 August 2012 16:41:03 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 8 May 2013 19:30:06 UTC