2015-01-06 10 views
1

是否有JavaScript的任何簡單的方法來使用變量或函數名作爲這樣一個對象的屬性:如何使用變量或函數名稱作爲JavaScript中對象屬性的佔位符?

var someObject = { 
 
\t piece1: 'one', 
 
\t piece2: 'two' 
 
}; 
 

 
var trial = "piece1"; 
 

 
alert(someObject[trial]); 
 

 
function someFunction(secondTrial) { 
 
\t return someObject[secondTrail]; 
 
}; 
 

 
alert(someFunction(piece1));

讓「審判」 &「secondTrial」將工作以及「someObjects」的財產;所以基本上他們都會像「someObject.piece1」一樣工作?

+0

另請注意'someObject [secondTrail]'中的拼寫錯誤。我不明白你的意思是什麼*「[...]使用函數名稱作爲對象的屬性」* –

回答

3

當你做someFunction(piece1),piece1將被視爲一個變量,因爲它尚未定義,ReferenceError: piece1 is not defined將被拋出。您需要將其作爲字符串傳遞,如下所示:

alert(someFunction("piece1")); 
相關問題