1

同じJavascriptエンクロージャー内でfunc2がfunc1を呼び出すにはどうすればよいですか? これは可能ですか?

var x = (function() {

    return {
        func1: function func1() {},
        func2: function func2() {
            var y = func1();  // Doesn't work! What does?
        }
    }

}());
4

2 に答える 2

2

戻る前に定義してから、戻りオブジェクトのプロパティとしてfunc1参照を割り当てます。func1

var x = (function() {
    function func1() {}

    return {
        func1: func1,
        func2: function func2() {
            var y = func1();
        }
    }

}());
于 2013-08-13T04:14:44.503 に答える
1
var x = (function() {

return {
    func1: function func1() {},
    func2: function func2() {
        var y = this.func1();
    }
}

}());

おそらくあなたはそのようなものを探していますか?

于 2013-08-13T04:19:19.593 に答える