- From: Erik Arvidsson <arv@chromium.org>
- Date: Thu, 20 Oct 2011 09:02:10 -0700
- To: Alex Russell <slightlyoff@google.com>
- Cc: Lachlan Hunt <lachlan.hunt@lachy.id.au>, Webapps WG <public-webapps@w3.org>, Yehuda Katz <wycats@gmail.com>, John Resig <jeresig@gmail.com>, Paul Irish <paulirish@google.com>, Cameron McCormack <cam@mcc.id.au>
On Thu, Oct 20, 2011 at 04:18, Alex Russell <slightlyoff@google.com> wrote: > No we don't. The fact that there's someone else who has a handle to > the list and can mutate it underneath you is a documentation issue, > not a question of type...unless the argument is that the slots should > be non-configurable, non-writable except by the browser that's also > holding a ref to it. That is an ES violation. A non configurable, non writable data property is not allowed to change its value. var descr = Object.getOwnPropertyDescription(object, name); if (!descr.configurable && !decsr.writable && ('value' in descr)) { var value = descr.value; setInterval(function() { // Must never change assert(object[name] === value); }); } Therefore there is no such thing as an immutable live NodeList. There are ways around this. 1. Use a getter 2. Make it configurable -- erik
Received on Thursday, 20 October 2011 16:02:59 UTC