Показать сообщение отдельно
  #5 (permalink)  
Старый 12.08.2014, 08:01
Новичок на форуме
Отправить личное сообщение для Eugenius Посмотреть профиль Найти все сообщения от Eugenius
 
Регистрация: 11.08.2014
Сообщений: 2

ixth, спасибо за подсказку. eval я, разумеется, пробовал, но окружить объект скобками как-то не догадался.

tsigel, я в курсе, что eval (равно как и new Function()) - плохое решение (и даже в курсе, почему :-)). Но я, к сожалению, не смог придумать другого решения поставленной задачи - чтобы описание объекта было в отдельном файле, чтобы имя этого файла вычислялось, и чтобы сгенерированный объект присваивался нужной переменной (если точнее - в свойство другого объекта, где имя этого свойства тоже вычисляется). Т.е. если записать это условно в коде, то чтобы получилось следующее:
var objPropertyName = calcObjectPropertyName();
var objFileName = calcObjectFileName();
holderObject[objPropertyName] = loadObjectFromFile(objFileName);
Видно, что при описании объекта неизвестно, в поле с каким именем надо будет положить созданный объект. Да и вообще, если описание объекта будет знать, как оно будет использоваться - это совершенно ненужная и при этом довольно сильная зависимость.

Если подскажете, как эту логику можно реализовать без eval - буду очень благодарен.
Ответить с цитированием