0
道歉传递的对象的方法,如果标题是不太清楚:)的Javascript:允许作为一个参数进入公共方法
我传递一个对象O
(有方法)的功能A
(即具有私人功能和公共方法)。我可以给O
拨打任何A
的方法吗?
所以:
var O = {
O_method1: function (text) {
return A_public1(text);
}
},
A = (function (O) {
function A_private1(text) {
return O.O_method1(text);
}
return {
A_public1: function (text) {
return text + " else";
},
A_public2: function (text) {
return A_private1(text);
}
};
}(O));
alert (A.A_public2("something"));
所以在这里,A
接收O
作为参数。致电A_public2
调用A_private1
,该调用O_method1
已作为A
的参数收到。到目前为止没有问题。但是,O_method1
试图拨打A_public1
,但它无法看到它。我怎样才能启用最后一次通话?
Firebug中的错误是:ReferenceError: A_public1 is not defined
。
快速查找+1上 – sachinjain024
感谢您的支持。它并不完全解决我的现实世界的问题,但这里完全是正确的解决方案:) – Nick
没问题。你现实世界的问题是什么? – Default