从带有参数的字符串变量调用函数内的函数

时间:2015-04-06 12:13:30

标签: javascript

我想从带有参数的字符串变量调用函数中的函数。

让我通过添加一些代码来展示我想要的内容

var myFunction = function() {
    var innerFunction = function(data) {
        alert(data);
    }

    return {
        run: function(data) {
            innerFunction(data);
        }
    }
};

var myString = "myFunction.run()";

如果我不想传递变量而不是很容易;

var callFunction = new Function(myString);
callFunction();

如果我可以在函数中不使用函数的情况下传递变量;

function myFunction(data) {
    alert(data);
}

var myString = "myFunction";
window[myString]("Hello World!");

然而,这不是我想要的。任何人都可以通过向string变量传递参数来调用函数内的函数吗?

2 个答案:

答案 0 :(得分:0)

可能会有所帮助

var myfun = function(){
 console.log('Hello');
}

window['myfun']();

输出:Hello

答案 1 :(得分:0)

好吧,似乎在SOF上张贴有助于我更好地思考。

我忘了尝试这个;

var functionName = myString.split('.');
window[functionName[0]][functionName[1]]("Hello World");

它按预期工作。谢谢大家。