如何在Javascript中将参数传递给对象的函数?

时间:2013-09-30 13:08:22

标签: javascript function object parameter-passing

我道歉,如果这是一个公开的,但我找不到我想要的答案,虽然我的问题似乎很容易。

这就是我所拥有的:

function myMain (myParam) {

    var myObj = {

        myVal1 : 'demo',
        myFunc : function (myParam) {
            console.log (myParam);
        }
    };

    runDemo(myObj);

}

我的问题是我希望console.logmyParam myMain,但它是undefined - 为什么?

如何调用myMain('works')以便控制台写works

仅供参考:使用此单个对象调用runDemo,并使用myFunc作为对象值之一 - 无处可去。我很感激任何帮助,谢谢。

1 个答案:

答案 0 :(得分:1)

让myFunc不接受这样的参数:

function myMain (myParam) {

    var myObj = {

        myVal1 : 'demo',
        myFunc : function () {
            console.log (myParam);
        }
    };

    runDemo(myObj);

}

在这种情况下,myFunc会保留变量myParam的值。这称为closure