Javascript 有没有一种方法可以调用元素';s函数作为参数传递?

Javascript 有没有一种方法可以调用元素';s函数作为参数传递?,javascript,jquery,Javascript,Jquery,我想创建一个函数,接收另一个函数作为参数,然后在元素中调用此函数,如下所示: function applyFunctionToDivs(function1, function2, function3) { $('#div1').function1(); $('#div2').function2(); $('#div3').function3(); }; if (value == 'A') { applyFunctionToDivs(showE

我想创建一个函数,接收另一个函数作为参数,然后在元素中调用此函数,如下所示:

 function applyFunctionToDivs(function1, function2, function3) {
    $('#div1').function1();
    $('#div2').function2();
    $('#div3').function3();
 };
    if (value == 'A') {
        applyFunctionToDivs(showElement, hideElement, hideElement);
    }

    if (value == 'B') {
        applyFunctionToDivs( hideElement,showElement, hideElement);
    }

    if (value == 'C') {
        applyFunctionToDivs(hideElement, hideElement, showElement);
    }
有没有一种jQuery/Javascript方法可以直接做到这一点

我完成了这项工作,但创建了如下附加功能:

 function applyFunctionToDivs(function1, function2, function3) {
    $('#div1').function1();
    $('#div2').function2();
    $('#div3').function3();
 };
    if (value == 'A') {
        applyFunctionToDivs(showElement, hideElement, hideElement);
    }

    if (value == 'B') {
        applyFunctionToDivs( hideElement,showElement, hideElement);
    }

    if (value == 'C') {
        applyFunctionToDivs(hideElement, hideElement, showElement);
    }
我要显示/隐藏的功能:

function showElement(elem) {
    elem.show();
};

function hideElement(elem) {
    elem.hide();
};

function applyFunctionToDivs(fun1, fun2, fun3) {
    fun1($('#div1'));
    fun2($('#div2'));
    fun3($('#div3'));
};
我认为这是可以优化的。有任何直接执行此操作的建议吗?

从中,您可以执行以下操作:

$("body")['function']()
因此,您可以执行以下操作,但可以对其进行进一步重构,使参数成为一个数组并在数组中循环

 function applyFunctionToDivs(function1, function2, function3) {
    $('#div1')[function1]();
    $('#div1')[function2]();
    $('#div1')[function3]();
 };

重复建议的可能重复是指当名称为字符串时如何调用函数,我的问题是如何使用元素调用方法:element.function()您可以将元素存储为单个变量。请使用
开关,而不是创建if/else丛林。