请教高手一个javascript的基础问题
犀牛书上说,下面的代码在IE中有内存泄露的问题,因为是循环引用造成的: 
 function   addValidationHandler(form)   { 
             form.attachEvent( "onsubmit ",   function(   )   {   return   validate(   );   }); 
 } 
 但随后的解释的并不是很详细(也许是我没读明白),请大家给小弟讲讲吧,比如画个作用域链或对象间的引用示意图啥的... 
 谢谢。 
------解决方案--------------------我理解: 
 function( ) { return validate( ); } 
 是一个嵌套函数,被定义在函数addValidationHandler中,因为它被attachEvent到了form上,作为form提交事件的处理方法,则需要保留这个函数的运行环境----也就是说addValidationHandler函数的运行现场需要被保留,以备function( ) { return validate( ); }使用. 
 这样一来,form的onsubmit需要函数function( ) { return validate( ); },而这个函数需要addValidationHandler,addValidationHandler又有对form的引用,所以形成循环引用,内存无法释放,导致memery leak.