簡體   English   中英

Javascript:從另一個文件調用函數

[英]Javascript : calling function from another file

我只是Javascript的新人所以當我閱讀Javascript文檔時,有許多復雜的結構我無法遵循。

以下是我正在閱讀的Javascript代碼的簡短說明:在我的例子中有兩個主要文件: Helper.jsCircle.js

在Helper.js中,有一個方法名: using:function(param1,param2) 以下是Circle.js代碼:

Helper.using('py.Figures', function (ns) {

    ns.Circle = function (params) {
        // some additional methods and code here
    }

    ns.Alert = function(){   // for the test purpose
           alert('hello');
    }
});

在文件test.html中,我寫了一些這樣的代碼:

<script src="Helper.js"></script>
<script src="circle.js"></script>
<script>
   test = function(){
        py.Figures.Alert();  // calling for testing purpose
   }
</script>
<body onload="test();"></body>

當我在Chrome上運行並在控制台中查看時,我遇到了以下錯誤:

未捕獲的TypeError:對象#沒有方法'警報'

這意味着我還沒有導入那些課程。 請告訴我如何從另一個文件調用函數。 在我的情況是:調用Alert()

謝謝 :)

@編輯:我為代碼添加了一些鏈接:

Helper.js

Circle.js

你為什么不看看這個答案

在javascript文件中包含javascript文件

簡而言之,您可以使用AJAX加載腳本文件,或者在HTML上添加腳本標記以包含它(在使用其他腳本的功能的腳本之前)。 我發布的鏈接是一個很好的答案,有兩個方法的例子和解釋。

是的你可以。 請檢查我的小提琴以獲得澄清。 出於演示目的,我將代碼保存在相同的位置。 您可以提取該代碼,如兩個不同的Javascript文件所示,並將它們加載到html文件中。

https://jsfiddle.net/mvora/mrLmkxmo/

 /******** PUT THIS CODE IN ONE JS FILE *******/

    var secondFileFuntion = function(){
        this.name = 'XYZ';
    }

    secondFileFuntion.prototype.getSurname = function(){
     return 'ABC';
    }


    var secondFileObject = new secondFileFuntion();

    /******** Till Here *******/

    /******** PUT THIS CODE IN SECOND JS FILE *******/

    function firstFileFunction(){
      var name = secondFileObject.name;
      var surname = secondFileObject.getSurname()
      alert(name);
      alert(surname );
    }

    firstFileFunction();

如果使用構造函數創建對象並嘗試從第二個文件中訪問該屬性或方法,則它將允許您訪問另一個文件中存在的屬性。

只需在index.html中處理包含這些文件的順序

暫無
暫無

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

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