Iva*_*van 6 javascript variables jquery function memoization
我试图在JavaScript函数上模仿静态变量,具有以下目的:
$.fn.collapsible = function() {
triggers = $(this).children('.collapse-trigger');
jQuery.each(triggers, function() {
$(this).click(function() {
collapse = $(this).parent().find('.collapse');
})
})
}
Run Code Online (Sandbox Code Playgroud)
如何保存"折叠"对象,以便不必在每次调用时"找到"它?我知道使用命名函数我可以做类似"someFunction.myvar = collapse"的事情,但是像这样的匿名函数呢?
谢谢!
Vin*_*ert 12
您可以使用functioName.myVar = value或者arguments.callee.myVar = value如果没有当前函数名称将变量保存在函数中.
arguments.callee 是你当前的职能.
对于匿名函数,您可以使用返回函数的函数.
例如:
var myAnonymousFunction = (function(){
var myFirstStatic = $("#anElement");
var anotherStatic = true;
return function(param1,param2) {
// myFirstStatic is in scope
// anotherStatic also
}
})();
Run Code Online (Sandbox Code Playgroud)
应该像魅力一样工作,并确保静态初始化代码只执行一次.
| 归档时间: |
|
| 查看次数: |
6490 次 |
| 最近记录: |