- From: Garrett Smith <dhtmlkitchen@gmail.com>
- Date: Thu, 10 Jul 2008 10:16:07 -0700
- To: public-html <public-html@w3.org>
On Thu, Jul 10, 2008 at 12:22 AM, Cameron McCormack <cam@mcc.id.au> wrote:
>
> Cameron McCormack:
>> > > That's different from what I currently have in the Bindings spec,
>> > > which is basically "do a ToUint32() on the property name, and if the
>> > > result is a non-negative integer, use the index getter, otherwise use
>> > > the name getter".
>
> Simon Pieters:
>> > Hmm, seems like ToUint32 converts things like NaN and Infinity to 0.
When used in property access, the Expression is converted to a string
value. NaN and +Infinity will be a "NaN" and "Infinity" respectively.
Try it:
(function() {
var a = [];
a.NaN = 12;
a.Infinity = 13;
a[0] = "z";
alert(a[NaN]);
alert(a[1/0]);
// no property named "0x0" - so undefined;
alert(a["0x0"]);
// -0.0 => 0, resolve the "0" property on a.
alert(a[-0.0]);
})()
>> > Browsers don't do that. So I don't think that's good enough... e.g., we
>> > want ["0x0"], [1/0], etc., to use the name getter.
>
A string value of the Expression will be used. If the Expression is
"0x0", then the property "0x0" (or undefined) will be returned.
[snip]
Garrett
> --
> Cameron McCormack ≝ http://mcc.id.au/
Received on Thursday, 10 July 2008 17:16:44 UTC