Attribute defaults for Object.defineProperty
brendan at mozilla.org
Wed Aug 20 11:24:54 PDT 2008
On Aug 20, 2008, at 11:00 AM, Allen Wirfs-Brock wrote:
> The default values for [[Writable]], [[Enumerable]], and
> [[Flexible]] are all true as currently specified in Table 3 of
> Section 8.6.1.
Hi Allen, could you remind me and a few others who were wondering
yesterday (sorry I don't remember -- it's in minutes, somewhere) why
[[Deletable]] was not chosen instead of [[Flexible]]? Thanks.
Deletable would match the other new names more closely in inverting
the sense of the ES1-3 attributes, avoiding Dont- prefixes which lead
to double-negative statements and the fuzzy meaning and marketing
connotations ("Agile!" ;-) of "flexible".
> These defaults apply no matter how a property is created (by an
> object literal, implicitly by assignment, by defineProperty and
> friends). The defaults exactly match the default settings of the
> corresponding ES3 attributes so there is no semantic change for the
> property creation forms that already exist in ES3.
Special forms like var and function bind properties that are
DontDelete unless in eval code. Is this what Mark is getting at?
More information about the Es-discuss