2013-01-10 132 views
0

我可能不知道該怎麼稱呼它,但基本上我想動態傳遞屬性的名稱,然後在我的對象數據屬性中獲取該屬性的值。事情是這樣的:如何動態獲取JavaScript對象的屬性值?

function myFunc(e, myProperty) { 

    alert(e.data[myProperty]); 
} 

var myValue = myFunc(myObject, "someField"); 

我得到的價值不確定

我認爲在ColdFusion中的等價物是[myPropertyName],我想知道在JavaScript中是否有類似的東西。

更新:顯然越來越值的作品,但沒有我試圖將動態屬性作爲名稱/值對傳遞給AJAX請求。

var myValue = e.data[myProperty]; 

var myData = { myProperty: myValue } 

在上面myProperty的代碼被作爲「myProperty的」

+1

您的語法是正確的;這是在Javascript中通過名稱動態訪問對象屬性的方法。你能發佈你正在使用的數據嗎?這很可能是你的問題所在。 – glomad

+0

呃,它已經適合我了。如果你做了alert(e.data.someField),當然是 – jwatts1980

+0

;你會得到什麼嗎? – jwatts1980

回答

1

請嘗試:

var myValue = e.data[myProperty]; 

var myData = { }; 
myData[myProperty] = myValue; 

應讓你動態創建吃了一個物業名爲myProperty

0

爲我工作過:

function myFunc(e, myProperty) { 
    alert(e.data[myProperty]); 
} 

myObject = { data: {} }; 
myObject.data['someField'] = 123; 
var myValue = myFunc(myObject, "someField");