到目前为止,我将如何重新添加一个功能,我现在已经完成 addSplatter = undefined;
了这对于删除功能/破坏它非常有效,因此它不再执行该功能但我将如何重新添加我尝试过的功能
addSplatter = addSplatter;
但这对如何“重新添加”功能没有任何想法?谢谢阅读。
到目前为止,我将如何重新添加一个功能,我现在已经完成 addSplatter = undefined;
了这对于删除功能/破坏它非常有效,因此它不再执行该功能但我将如何重新添加我尝试过的功能
addSplatter = addSplatter;
但这对如何“重新添加”功能没有任何想法?谢谢阅读。
在使其undefined
将实际引用存储在变量中并使用它重新将其添加为函数之前。
var fnRef = addSplatter; // save function reference
addSplatter = undefined; // remove the function reference
addSplatter = fnRef; // make it a function again by assignment
您要做的是将变量值分配给同一个变量。
就语言而言,这在语法和语义上是正确的,但不会做您想要的(它实际上将存储在变量 ( undefined
) 中的值分配给自身)。为了做你想做的事,你需要第二个函数引用变量,正如Amit Joki提到的那样。此变量用作函数参考值的“临时存储”。然后,您可以将其重新分配给旧变量,只要临时变量不会超出范围并在某种意义上被破坏。