- From: Charles Pritchard <chuck@jumis.com>
- Date: Mon, 31 Oct 2011 14:18:18 -0700
- 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: http://dojotoolkit.org/reference-guide/dojo/NodeList.html I don't understand what "real array" means, other than the prototype equivalence. 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. -Charles
Received on Monday, 31 October 2011 21:18:45 UTC