来自 C++ 和 Java,我是 Javascript 的初学者。这个代码模式让我很困惑(在一个 jQuery 应用程序中找到):
var opts = { drop : empty};
function drop(arg){
opts.drop(arg);
//do something
}
我将如何阅读:opts
创建对象并声明属性drop
,但初始化为空。然后,定义函数(-object)drop
。在第二行中, opts 对象的 drop-attribute 被称为方法。但是,在我的理解中,opts.drop
是空的。所以它不应该是可调用的。
这里会发生什么?我是否遗漏了一些重要的代码,或者这是一种有意义的模式?
编辑:来源:https ://github.com/weixiyen/jquery-filedrop/blob/master/jquery.filedrop.js