0

如何从methodTwo调用methodOne

有没有安全正确的方法?

$(document).ready(function () {
    var classOne = new ClassOne();
    var classTwo = new ClassTwo();
});

var ClassOne = (function (window, document, Math, undefined) {

    function ClassOne () {
    }

    ClassOne.prototype = {
        methodOne: function () {
            console.log('method one');
        }
    };

    return ClassOne;
})(window, document, Math, undefined);

var ClassTwo = (function (window, document, Math, undefined) {

    function ClassTwo () {
    }

    ClassTwo.prototype = {
        methodTwo: function () {
            // how to call?
            // classOne.methodOne()
        }
    };

    return ClassTwo;
})(window, document, Math, undefined);
4

1 回答 1

1

如何从 methodTwo 调用 methodOne?

您需要访问要调用该方法的实例(您也可以从原型中获取它并应用于某个任意对象,但我想这不是您想要的)。要使其在 的范围内为人所知,请将methodTwo其作为参数传递给函数:

ClassTwo.prototype.methodTwo = function (one) {
    one.methodOne();
};

…

var classOne = new ClassOne();
var classTwo = new ClassTwo();
classTwo.methodTwo(classOne);
于 2013-09-11T16:39:41.150 回答