簡體   English   中英

從另一個JavaScript文件訪問main()函數

[英]Accessing main() functions from another javascript file

我有一個問題,我有2個文件1)包含main()以及與main()中的主UI相關的其他內容,還有一些功能2)另一個文件,該文件使從服務器到UI的連接

我找不到從輔助文件從main()調用函數的任何解決方案(我知道這不是很酷的編程設計,但我已經寫了很多代碼)

謝謝:)

在js中, function是您的作用域約束。 因此,請考慮以下代碼:

function main(){
    function callMom(){
        alert('hi mom!');
    }
}

function goAboutYourDay(){
    brushTeeth(); // works
    callMom(); // wont work
}

function brushTeeth(){
    alert('brush brush brush');
}

鑒於您的情況,您可以考慮返回main的某些函數,如下所示:

function main(){
    var callMom = function(){ 
        alert('hi mom!');
    }

    return {
        callMommy: callMom
    };
}

function goAboutYourDay(){
    var m = main();
    m.callMommy(); 
}

使用原型的方法如下:

var Main = function(){
    this.message = "Will you send some candy?";
};

Main.prototype.callMom = function(){
    alert('Hi Mom! ' + this.message);
};

function otherFile(){
    // you could create a new instance of Main if there isn't one available to you here
    var main = new Main(); 
    main.callMom();    
}

otherFile();
​

這是一些jsfiddles,以便您可以使用以下示例:
http://jsfiddle.net/lbstr/A3dSB/
http://jsfiddle.net/lbstr/FyDAL/
http://jsfiddle.net/lbstr/2TLu2/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM