我不确定我的语法是否正确,但由于某种原因我似乎无法调用我的函数,我的代码是按以下方式设置的;
var MyMethod =
{
MyFunction1: function(myData)
{
/// ...
MyFunction2: ([myData]);
return "YES";
},
MyFunction2: function(data)
{
// ...
return 'YES';
},
};
这是调用该函数的正确方法吗? Function1 正确执行,但我无法通过该调用执行第二个函数。我也尝试过将其作为 MyFunction2(myData)
等,但也没有运气。
我还认为,因为我的函数是在 var 中设置的,所以我将 function1 放在 function2 下面,但这也不起作用。
知道我在这里做错了什么吗?
最佳答案
var MyMethod = {
MyFunction1: function(myData) {
MyMethod.MyFunction2([myData]);
return 'YES';
},
MyFunction2: function(data) {
// whatever ...
return 'YES';
}
};
您也可以使用 this.MyFunction2([myData])
,但是,不能保证 MyFunction1
的执行使用 MyMethod
作为这个
,特别是如果您使用 call()
或apply()
任何地方。
关于javascript - 从同一个变量中调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18628591/