Синтаксическая ошибка при доступе к свойству по переменной? - PullRequest
0 голосов
/ 11 марта 2012

У меня есть переменная json, хранящаяся в $ ("# бюджет"). Данные ("выделения")

Я могу получить доступ к этим данным так:

id = "5";
alert( $("#budget").data('allocations')[id].amount );

Но мне нужно получить к нему доступ вот так:

var id = "5";
var field = "amount";

alert( $("#budget").data('allocations')[id].[field] );

Использование переменной в имени свойства приводит к сбою.

пропущенное имя после. оператор (имеется в виду [поле])

1 Ответ

5 голосов
/ 11 марта 2012

Как правило, .xxx можно заменить на ["xxx"], и нет ограничений на объединение. Просто используйте ту же логику, которую вы использовали для id:

$("#budget").data('allocations')[id][field]

Когда ключ находится в переменной, замените .key на [variable]. Итак, obj.key1.key2 становится obj[variable1][variable2] с той же логикой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...