簡體   English   中英

從js文件返回值

[英]return value from js file

我的html頁面中有兩個js文件。 如果第一個開頭是:

 (function($){
   ..  
   ..
   }(jQuery));

我可以將var插入function($,varname)return它的值並在另一個文件中使用它嗎?

你需要一個全局變量。 您可以通過以下幾種方式之一完成此操作。 我們假設我們需要將值“Bacon”發送到另一個腳本。

(function($){
   window.myScriptsExports = "Bacon";
}(jQuery));

// OR

var myScriptsExports = (function($){
   // other code
   return "Bacon";
   // NO other code
}(jQuery));

// OR (not really recommended)

(function($){
   // other code
   $.myScriptsExports = "Bacon";
   // other code
}(jQuery));

您可以使用全局命名空間來改進代碼,如下所示:

    (function($,global){
       var _obj = {};
       _obj.property1 = 'Property1';
       _obj.function1 = function() { console.log('Function 1');};
       global.myObject = _obj;
     }(jQuery,window));

     //accessing
     window.myObject.property1
     //or
     window.myObject.function1()

假設您的函數是同步的,您可以設置一個全局函數:

   (function($){
   .. 
      var myvar = 666; 
      window.getMyVar = function() {
         return myvar;
      };
   ..
   }(jQuery));

如果在此之后導入第二個文件,您可以在其他函數中使用它:

   (function($){
   .. 
      var myprevisouslysetvar = window.getMyVar();
   ..
   }(jQuery));

請注意,這些文件在javascript中無關緊要:如果兩個文件連接在一起,那么您的頁面將會起作用(如果您使用“嚴格”,則除外)。

暫無
暫無

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

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