我正在学习Javascript。我试图下载一个示例代码,其中会出现图片的转换。一些功能有我不能完全理解的代码。函数表达式中的Javascript if else语句
的第一个功能是:
function addElementEvent(o,e,f){
var of = o[e];
var f2 = function(){of();f();}
o[e] = !is_function(of) ? f : f2;
}
我想知道什么是f()的值。可以请你帮我>
和第二个功能是这样的:
var _loadImage = [];
function loadImage(s,f,always_show_loading){
var i_onload = function(){_loadImage[s]=true;if(f)f(s);}
var l = function(){if(_loadImage[s]){if(f)f(s);}else{var i=newElement('IMG');i.onload=i_onload;new function(){i.src=s;};}}
if(always_show_loading) setTimeout(l, typeof(always_show_loading) == 'number' ? always_show_loading : 1000);
else l();
}
那么这是LOC我不能完全在第二个功能理解。
变种i_onload =函数(){_的LoadImage [秒] = TRUE;如果(F)F(S);}
是该行用于如果,否则语句的快捷方式?
请您解释一下这段代码的意思吗?
谢谢!
'变种i_onload =函数(){_的LoadImage [秒] = TRUE;如果(F)F(S);}' 可以是写: 'VAR i_onload =函数(){ _loadImages [秒] = true;如果(f){f(s); } }' –
*函数调用的值f()* ... hm的值可以看作是函数返回的值。所以,如果你有一个像'function f(){return 2;}'这样的函数,'f()'的值就是'2' – devnull69
这段代码看起来像是已经通过最小化器运行了。如果您正在学习,您应该尝试找到未分类的代码。当所有变量被重命名为单个字符时,很难确定代码的作用。 – jasonscript