在定义上执行非匿名函数

问题描述

| 我有以下代码
$(document).ready(function() {

    var myFunc = function () {
        alert(\'test\');
    };

    myfunc();  

    jQuery(\'#type-selector\').change(myFunc);
});
这段代码的目的是我需要在document.ready事件和onChange事件上都执行函数\“ mYfunc \”。这段代码可以完美运行,但是我想知道是否有一种方法可以避免调用myFunc();并执行其定义上的功能呢?换句话说,我需要保留对函数对象的引用并执行函数“一行”。     

解决方法

        你可以写
jQuery(\'#type-selector\').change(
    (function() {
        alert(\'test\');
        return arguments.callee;
    })()
);
调用(
return arguments.callee
)时,此函数返回自身。 我立即调用该函数,然后将其返回值9(与该函数相同)传递给
change
作为事件处理程序。 这是令人困惑的代码。我不建议使用它。     ,        您可以触发
change
事件:
jQuery(\'#type-selector\').change(function() {
    alert(\'test\');
}).change();
要么
jQuery(\'#type-selector\').change(myFunc).change();