天天看點

兩個JS之間的函數互相調用

這個問題是我在工作中用到的一個方法 因為要做封裝

是以想到能不能在一個js中引用另一個js中的function

這樣的話能大大的減少代碼量

話不多說 先上代碼

首先要在html頁面引入兩個js檔案

兩個JS之間的函數互相調用

1.html

  1. <!DOCTYPE html>

  2. <html >

  3. <head>

  4. <meta charset="UTF-8">

  5. <title> </title>

  6. </head>

  7. <script src="1.js"></script>

  8. <script src="2.js"></script>

  9. <body>

  10. </body>

  11. </html>

1.js

兩個JS之間的函數互相調用
  1. function a(){

  2. alert(1);

  3. }

2.js

兩個JS之間的函數互相調用
a();
           

這樣2.js就可以直接調用1.js中的a函數了

當然這樣隻是很簡單的方法 下面寫一個閉包中的方法(當然也很簡單啦~~)

1.html

  1. <!DOCTYPE html>

  2. <html >

  3. <head>

  4. <meta charset="UTF-8">

  5. <title> </title>

  6. </head>

  7. <script src="1.js"></script>

  8. <script src="2.js"></script>

  9. <body>

  10. </body>

  11. </html>

1.js

兩個JS之間的函數互相調用
  1. var dianji;

  2. (function(){

  3. dianji = {

  4. a:function(){

  5. alert(1);

  6. }

  7. }

  8. })()

這裡的1.js是一個對象函數而且還是閉包的形式,是以我們要把dianji這個變量提升到全局。這樣在2.js中才能調用這個a函數 不然回報變量未定義的錯誤。

想要js之間互相調用function,那麼函數就必須是全局的

2.js

兩個JS之間的函數互相調用
dianji.a();
           

--------------------- 本文來自 老虎的部落格 的CSDN 部落格 ,全文位址請點選:https://blog.csdn.net/qq493820798/article/details/81216090?utm_source=copy