我有一個js對象,如:如何字符串轉換爲對象的字段名在javascript
obj = {
name: 'js',
age: 20
};
現在我想訪問obj的名稱字段,但我只能得到字符串「名」,所以如何將'name'轉換爲obj的字段名稱,然後獲得像obj.name這樣的結果。
預先感謝您。
我有一個js對象,如:如何字符串轉換爲對象的字段名在javascript
obj = {
name: 'js',
age: 20
};
現在我想訪問obj的名稱字段,但我只能得到字符串「名」,所以如何將'name'轉換爲obj的字段名稱,然後獲得像obj.name這樣的結果。
預先感謝您。
您可以使用訪問JavaScript對象的屬性索引即
var obj = {
name: 'js',
age: 20
};
var isSame = (obj["name"] == obj.name)
alert(isSame);
var nameIndex = "name"; // Now you can use nameIndex as an indexor of obj to get the value of property name.
isSame = (obj[nameIndex] == obj.name)
由於對象是JavaScript中的關聯數組,因此您可以訪問'名稱'字段,如obj['name']
或obj[fieldName]
,其中fieldName = 'name'
。
在Javascript中,obj.name
相當於obj['name']
,它增加了必要的間接性。
在您的例子:
var fieldName = 'name'
var obj = {
name: 'js',
age: 20
};
var value = obj[fieldName]; // 'js'
這是很簡單的,通過一個變量來訪問對象的價值,你用方括號:
var property = 'name';
var obj = {name: 'js'};
alert(obj[property]); // pops 'js'
`obj.name`還是我錯過了這個問題的重點? – mhitza 2011-01-30 05:03:08