[whatwg] Spec for location object needs to make some properties unforgeable; need supporting WebIDL changes

Adam Barth w3c at adambarth.com
Tue Sep 25 17:05:58 PDT 2012


On Tue, Sep 25, 2012 at 4:58 PM, Cameron McCormack <cam at mcc.id.au> wrote:
> Boris Zbarsky:
>
>> So we have indications that making everything on this
>> interface unforgeable is sufficiently web-compatible.
>
> OK.  I propose then that we allow [Unforgeable] on the interface, which
> means:
>
> * attributes get own, non-configurable accessor properties (with setters if
> they are not readonly attributes), and no property on the prototype
> * operations get own, non-configurable, non-writable properties, and no
> property on the prototype
> * the stringifier gets an own, non-configurable, non-writable toString
> property, and no property on the prototype
> * there is an own, non-configurable, non-writable valueOf property that just
> returns this
>
> I think that's the least amount of crazy.
>
> This would make Location.prototype empty.  Is that OK?

That looks like what Chrome does:

$ location.__proto__.hasOwnProperty("href")
false
$ location.__proto__.hasOwnProperty("host")
false

Adam



More information about the whatwg mailing list