2012-03-31 28 views
0

我想使用一个初始化函数,在用户访问应用程序的一部分后调用,但在第一次访问之后,我不想再初始化。一个简单的方法是使用一个标志和一个if语句,但是这个问题有一个更好的解决方案:其他语言中的 我更改了init函数的主体,以便在调用此方法之后。写入初始化函数的正确方法

这也可以用Javascript来完成吗?我写了这样的事情,但是Eclipse说,这是一个非法转让:

function initEdit(){ 
... 

this = function() {}; 
} 
+0

是什么让你认为'this'指函数本身? – 2012-03-31 16:09:05

回答

2

是的,你可以,但this并不是指的功能,所以你必须按名称来指定它:

function initEdit(){ 
    ... 

    initEdit = function() {}; 
} 

另一种选择,这可能是更容易执行,是只使用一个变量:

var initialised = false; 

function initEdit(){ 
    if (!initialised) { 
    initialised = true; 
    ... 
    } 
} 
+0

+1替代。当方法更简单时,意图更明显。 – vhallac 2012-03-31 16:27:04