У меня есть массив как этотПрисвоить значения массива в другой массив называется динамически
pages['name'] = "Home";
pages['childs'][0]['name'] = "Sub page 1";
pages['childs'][1]['name'] = "Sub page 2";
pages['childs'][2]['name'] = "Sub page 3";
pages['childs'][2]['childs'][0]['name'] = "Sub sub page 1";
Моя проблема заключается в том, что мне нужно изменить части массива, например.
pages['childs'][0] = otherarray;
// or
pages['childs'][2]['childs'][0] = otherarray;
Очевидно, что если otherarray была нитка я легко могу сделать что-то вроде
eval('pages' + where + ' = "' + stringvalue + '"');
Но я имею массив в качестве значения, так что я не могу сделать
eval('pages' + where + ' = "' + otherarray + '"');
, так как код будет проведено
pages['childs'][0] = [object object];
Какое решение? Благодаря
Что вопрос? 'pages ['childs'] [0] = [object object];' действителен, если вы просто предупреждаете об этом ... это просто означает, что 'pages ['childs'] [0]' содержит объект. –
@JohnGreen Я думаю, что у него есть переменная 'where =" ['childs'] [0] ", и он хочет использовать это, чтобы определить, что назначить. – Barmar
В псевдокоде я должен сделать что-то вроде этого. eval ('pages' + where) = otherarray; –