草庐IT

lazyLoadGrid

全部标签

Javascript 闭包在绑定(bind)到事件时表现不同

我正在尝试使用闭包来确保一个函数只能执行一次。听起来很简单,它的工作原理如下:functionrunOnce(fn)//returnscopyoffnwhichcanonlyexecuteonce{varran=false;returnfunction(){if(!ran){fn();ran=true;}};}我已经像这样测试了这个功能:functionlazyLoadGrid(event,ui){alert('hi');}vartest1=runOnce(lazyLoadGrid);vartest2=runOnce(lazyLoadGrid);test1();test2();test