Separating a Hash type from Object
zwetan at gmail.com
Wed May 2 04:12:57 PDT 2007
for me I see that as duality between strict and non-strict mode
in strict mode we have statement as internal/private/public/etc..
but for non-strict mode we don't have such things
so to handdle those object as hash
I would prefer to have access to DontEnum() / ReadOnly() / DontDelete()
kind of functions
and maybe using something as ASSetPropflags from flash implementation
could be more practical
(see: http://osflash.org/flashcoders/undocumented/assetpropflags )
for the record, one thing I hated a lot from the JScript.NET implementation
was to access such hash with  and impossible to use .
maybe I don't see all the implications, but on object Object
we should keep the shadowing mecanism as it was in ES3
and just use DontEnum() (or more powerfull functions)
to hide what we don't want to be enumerable.
If it may be of any use, in environments like AS1/AS2
I use the ASSetPropflags to change the enumerability
in JS, I just use hasOwnProperty to be sure the prop is defined
on the instance and not inherited.
More information about the Es4-discuss