Just a nitpick.

Don't do this
var datascape = new Object();
var datascape2 = new Array();

Instead
var datascape = {};
var datascape2 = [];


On Dec 30, 1:27 pm, "Alexandre Plennevaux" <aplennev...@gmail.com>
wrote:
> wair, you're all scarrying me:
>
> i often do things like this:
>
> var datascape = new Object();
>
> datascape.el = $('#datascape');
> datascape.ini = function(){
>         datascape.el.click(function(){
>           dothis();
>           dothat();
>         });
>
> }
>
> is this pattern causing a potential memory leak problem, because the
> js object is linked to a DOM element?
>
> On Tue, Dec 30, 2008 at 10:10 PM, Kean <shenan...@gmail.com> wrote:
>
> > A good reason why closure is used
>
> >http://yuiblog.com/blog/2006/06/01/global-domination/
>
> > On Dec 30, 1:04 pm, Kean <shenan...@gmail.com> wrote:
> >> Klaus is right,
>
> >> Here's an article about closure causing 
> >> leakshttp://www.javascriptkit.com/javatutors/closuresleak/index.shtml
>
> >> On Dec 30, 4:38 am, "Alexandre Plennevaux" <aplennev...@gmail.com>
> >> wrote:
>
> >> > Klaus, you got me: frankly i have no "real" idea what is the purpose
> >> > of enclosure.
> >> > That's abstract art to me. i just read in several places that it's
> >> > good to use it, so i trust my sources, do it and move on. Not that i'm
> >> > proud of it, but, to use a metaphor, one does not need to know the
> >> > internals of a car in order to be able to drive it, although it surely
> >> > is a valuable knowledge if one wants to keep its car in a good state !
> >> > Yet, since the car changes every six months, it's just up to you,
> >> > wheather you're driven by the pure developer's passion or by consumer
> >> > pragmatism.
>
> >> > On Tue, Dec 30, 2008 at 1:28 PM, Klaus Hartl 
> >> > <klaus.ha...@googlemail.com> wrote:
>
> >> > > On 30 Dez., 08:45, "Alexandre Plennevaux" <aplennev...@gmail.com>
> >> > > wrote:
> >> > >> "JavaScript enclosures"?
>
> >> > >> i think it has to do with encapsulating your code inside a function so
> >> > >> that all vars are inside the function's scope, so not cluttering the
> >> > >> global namespace.
> >> > >> This, to avoid memory leak.
>
> >> > > Are you implying that global variables do leak memory? There are good
> >> > > reasons to not clutter the global namespace but I don't believe
> >> > > avoiding leaks is one of them.
>
> >> > > Actually you do increase the chance to create leaks in IE if you use
> >> > > closures under certain circumstances.
>
> >> > > --Klaus

Reply via email to