W3C home > Mailing lists > Public > public-webapps@w3.org > October to December 2011

Re: QSA, the problem with ":scope", and naming

From: Charles Pritchard <chuck@jumis.com>
Date: Mon, 31 Oct 2011 14:18:18 -0700
Message-ID: <4EAF109A.2080106@jumis.com>
To: public-webapps@w3.org
On 10/31/11 2:03 PM, Cameron McCormack wrote:
> On 31/10/11 1:56 PM, Alex Russell wrote:
>> Live NodeList instances don't need to be considered here. They're the
>> result of an API which generates them, and that API can be described
>> in terms of Proxies. No need to complicate NodeList or imply that we
>> need a different type.
>> Making NodeList instances real array unifies them all. We can get 
>> that done too.
> Don't live and static NodeLists use the same prototype?  If they are 
> separate, I don't see any problem with making them "real arrays", but 
> I am not sure what the implications of that are.  Array.isArray == 
> true, I guess?  Do we have that ability within the bounds of 
> ECMAScript yet? Note that we can already make NodeList.prototype === 
> Array.prototype if we want, using appropriate Web IDL annotations.
Array seems to work fine in WebKit:
document.getElementsByTagName('div').__proto__.__proto__ = Array.prototype;

dojo just reimplements NodeList as an array:

I don't understand what "real array" means, other than the prototype 

If NodeList were an array, what's the behavior of running push on NodeList?
The list may end up with non-node objects if push is not supplemented.

Received on Monday, 31 October 2011 21:18:45 UTC

This archive was generated by hypermail 2.3.1 : Friday, 27 October 2017 07:26:36 UTC