2012-10-01 145 views
0

我如何使用對象的值作爲對象名稱如何在javascript中使用對象值作爲對象名稱?

這樣

$.each(columns, function(index, value) { 
    var objectName = value.object; // need to pass this 
    to the next $.each 
    //lets say i'm expecting objectName = x 
    $.each(values, function(i, v) { 
     // console.log(v.x) ; // this works fine 
     console.log(v.objectName); 
    }); 
});​ 

我曾嘗試toString()沒有工作 感謝

使用變量時
+0

你試過toString()嗎? – MushinNoShin

+0

@MushinNoShin不,我會 –

回答

4

用方括號標記(標識符)而不是實際的物體屬性

console.log(v[objectName]) 

有關主題futher參考:http://www.jibbering.com/faq/faq_notes/square_brackets.html

字符串變量作爲標識符
方括號內使用並不需要是一個字符串文字的字符串。它可以是導致字符串的任何表達式。這是方括號表示法變得最有用的地方,因爲表達式可能是對保存屬性名稱作爲其值的字符串變量的引用,或者是返回字符串的函數調用或連接兩個字符串的表達式,或者任何組合[...]

+0

謝謝它的工作原理,你能給我們更多的解釋你的答案 –

+0

我可以做這樣的事情$ .each(價值,函數(指數,價值){var i = 0;我< column.length; i ++){console.log(value [columns [i]]) –

+0

yes如果columns [i]是values對象的有效屬性 – fcalderan

相關問題