2017-05-20 49 views
0

我目前正在重構我的代碼,我想將名爲REFERENCE_LIST的對象數組導出到另一個文件。在Javascript中引用變量的正確方法

reference.js

export const REFERENCE_LIST = [ 
{name:"TypeA", foodList:foodAList}, 
{name:"TypeB", foodList:foodBList} 
] 

export const foodAList = ['apple', 'orange', 'banana'] 
]; 

export const foodBList = ['meat', 'fish'] 
]; 

然而,從REFERENCE_LISTfoodList領域始終是 「不確定」。我是否錯誤地引用了這些數組?

+0

是的控制檯是正確的,因爲foodList從來沒有被聲明或分配,所以當你試圖使用它時,它仍然是未定義的。 – Dennisrec

+0

名稱字段工作的原因是因爲它是一個普通的字符串。 – Dennisrec

回答

3

你不能參考變量在JS中。您可以參考對象的值,雖然 - 但是這些對象需要先創建爲:

export const foodAList = ['apple', 'orange', 'banana']; 
export const foodBList = ['meat', 'fish']; 

export const REFERENCE_LIST = [ 
    {name:"TypeA", foodList:foodAList}, 
    {name:"TypeB", foodList:foodBList} 
]; 

您也可以使用其中的getter創建順序並不重要:

export const REFERENCE_LIST = [ 
    {name:"TypeA", get foodList() { return foodAList; }}, 
    {name:"TypeB", get foodList() { return foodBList; }} 
]; 

但即使那些在常量初始化之前評估它們時會拋出異常。

+0

啊,是的,這是有道理的,謝謝! – lost9123193

相關問題