2015-11-04 68 views
0

我嘗試從我的測試JavaScript對象時遇到咖啡腳本問題。我有2個文件:一個JavaScript和一個咖啡腳本,按照這個順序加載。從咖啡腳本測試javascript對象存在

我需要的是在JavaScript文件中定義的對象:

var my_js_obj = { 
    string1: "blablabla", 
    string2: "blobloblo", 
    string3: "blublublu", 
}; 

然後我試圖從我的咖啡腳本文件中得到這個對象:

if not my_js_obj? 
    my_js_obj = {} 
    console.log "obj does not exist" 
else 
    console.log "obj exists" 

console.log my_js_obj 

在我的控制檯,我總是得到一個空的對象:

obj does not exist 
Object {} 

我不知道是否有影響,但我使用Ruby on Rails 4.

回答

1

my_js_obj沒有在全球範圍內定義。它在JavaScript文件中被定義爲局部變量。您無法從其他文件訪問它。

如果您將其定義爲全局變量,那麼您可以訪問它。

+0

謝謝你的回答。我認爲var之外的任何函數或塊的聲明都是全局定義。現在,它在我的JavaScript文件和咖啡腳本文件中都使用window.my_js_obj。 –