Thread:Pecoes/@comment-4674838-20121105085352/@comment-4674838-20121106224326

Every call to Main.local and Main.global will return a new object, but you will manipulate the same data: console.log(local === data.local); // false
 * Why not just construct the object /once/ inside of Preferences and then have  return a reference to that object. What's the point of constructing all these new objects that operate on the same data?

The part about Shared that confuses me the most is "who is allowed to do what". For example, at w:c:dev:Preferences ^ data.shared('someUser') returns the Shared object (instance of mediaWiki.Map) of potentially /any/ user in all of Wikia.

^ .set('example', 'hello world'); Allows me to /set/ that user's data? Is that even legal? Setting the data of someone other than the user in who's browser the script is running?