我遇到过这种编程风格,其中: 它们不是直接调用对象方法,而是在构造函数方法中传递一个字符串,构造函数方法然后检查该字符串并调用与之关联的函数。
function MySimpleObject(option){
if (typeof option === 'String'){
pluginMethods[String].apply(this, arguments);
}
else {
init();
}
}
这似乎与jQuery一起用作扩展函数。
jQuery.fn.extend({simpleObj: MySimpleObject});
如果有人能在这方面给我启发,我真的很感激。
答案 0 :(得分:1)
这允许以下样式的编程,例如jQuery UI使用的编程:
$('selector').datepicker('option', 'option-name', 'option-value');
如果您在没有参数或对象的情况下调用.datepicker()
,则会初始化datepicker。当第一个参数是一个字符串时,它是对datepicker方法的调用。这种方法用于所有jQuery UI小部件,并且在许多其他jQuery插件中也很常见。