2013-03-02 70 views
0

我有具有其中我想通過對象到另一個JS文件Y和根據該對象的值來執行JSON對象JS文件X。這兩個js文件被引用到相同的html頁面。傳遞JSON對象從一個JS文件到另一個JS文件

JSON對象是這樣的

var displayDetails = { 
    "A" : { 
       data : "1", 
       display : "A1" 
     }, 
    "B" : { 
       data : "2", 
       display : "B2" 
     } 
}; 

在這之後的JSON對象被解析

var cachedOptions = JSON.parse(JSON.stringify(displayDetails)); 

所有這一切都在js文件X.那麼,如何訪問上cachedOptions或displayDetails js B?我是json的新手,所以任何幫助表示讚賞。謝謝!

+1

他們都應該能夠訪問對方的變量,如果變量在全局範圍內。你將需要發佈你的代碼。如果在一個文件中聲明瞭一個變量,例如var displayDetails;那麼另一個應該能夠讀取它,只要在另一個寫入它之後它正在讀取它。你的var xyz語句必須在函數之外。 – Jodes 2013-03-02 08:46:19

回答

1

只要你不使用名稱間距你可以簡單地指的是在腳本Y.的HTML頁面中聲明在腳本中X變量將編譯所有的頁面上列出在一起,使「全局」變量的腳本文件將能夠「看到」對方。

當然,寫這些文件時,單獨的代碼將沒有任何意義,但它會在瀏覽器中運行。

0

您可以創建一個global namespace和附加的對象和功能,以便它可以在任何地方在你的應用程序中使用。

文件X:

window.scope = {}; 
scope.displayDetails = { 
    "A" : { 
      data : "1", 
      display : "A1" 
    }, 
    "B" : { 
      data : "2", 
      display : "B2" 
    } 
}; 
scope.cachedOptions = JSON.parse(JSON.stringify(scope.displayDetails)); 

文件Y:

/** Use the object from another file. */ 
console.log(scope.displayDetails.A); 

console.log(scope.cachedOptions); 
相關問題