2013-12-14 5 views
0

У меня есть объект, который является членом массива с параметрами, и этот объект имеет свойство item_, теперь, если я назначаю значение этому свойству, как его можно назвать?Динамически вызывающие свойства объекта

for(ss=0;ss<=parameters[gpc].children_count-1;ss++) 
{ 
parameters[gpc]['item_'+ss]="hello"; 
//console.log(parameters[gpc].item_0) 

parameters[gpc].message+="\t\t&lt;item value=&quot"+parameters[gpc].item_+ss+"&quot /&gt;" 
} 

Я пробовал eval(), но напрасно.

+1

Естественно, вы сделали бы это, как будто вы уже делаете это, когда задаете значение. 'parameters [gpc] ['item _' + ss]' –

+0

да, я знаю это уже, я хотел спросить, как я могу использовать динамический вызов с использованием переменной SS, например, если я вызываю параметры [gpc] .item_0, он работает! – ProllyGeek

+0

Естественно, вы сделали бы это, как будто уже делаете это, когда задаете значение. 'parameters [gpc] ['item _' + ss]' –

ответ

3

Вы можете попробовать и доступ к нему, как ассоциативное значение массива:

var x = parameters[gpc]['item_' + ss]; 

Так же, как присвоить значение.

+0

- это единственный способ вызвать свойство? – ProllyGeek

+1

Я предполагаю, что вы также можете использовать eval. Для этого вам нужно придумать правильную строку для eval: var str = "var x = parameters [gpc] .item_" + ss; а затем просто оценивайте его так: eval (str); – MaGnetas

+0

попробовал eval, и он не работал! – ProllyGeek

Смежные вопросы