兩個js文件之間函數互調問題


按照常理來說,在<body>標簽結束之前以下面的方式引入兩個js文件

<script src="a.js"></script>

<script src="b.js"></script>

則兩個js文件中的函數就可以互相調用,但是如果按照這樣的方式引入后,在調用的時候一直提示該函數is not defined

放在同一個js文件中沒有任何問題,分成兩個就無法找到

那可以嘗試這樣的函數定義

 

var fun = function (a,b){

 

  return a+b;

 

}

為什么會出現這種情況,原因如下:

1.函數聲明

function sum1(n1,n2){
     return n1+n2;
   };
2.函數表達式,又叫函數字面量
var sum2= function (n1,n2){
     return n1+n2;
};
兩者的區別:解析器會先讀取函數聲明,並使其在執行任何代碼之前可以訪問;而函數表達式則必須等到解析器執行到它所在的代碼行才會真正被解釋執行。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM