PHP-шная конструкция ${$var1.$var2}. А в яваскрипте?
Здравствуйте!
Собственно сабж. Есть ли такая конструкция в яваскрипте, которая позволяет формировать из строк имя переменной, к которой обращаешься. Хотел как-нибудь поискать ответ самостоятельно, но даже в голову не приходит как правильно сформировать вопрос. Буду очень благодарен за ответ. |
Если нужно обратится к переменной из глобального контекста:
window["var1"] С локальным контекстом сложнее, придется использолвать eval. Расскажите для чего это вам понадобилось, может быть подскажем, как обойтись без таких вещей. |
хе-хе.
очень даже получилось. eval(var1+var2) Очень большое спасибо вам, добрый человек, за подсказку. |
Цитата:
|
да нет же, я не жадный :). Могу поделиться.
пхп-шный цикл генерирует вот такой набор переменных WMUWMZ=7.478; WMZWMU=0.133725595079; WMRWMZ=31.139; WMZWMR=0.0321140691737; WMEWMZ=1.357; WMZWME=0.736919675755; WMUWME=10.355; WMEWMU=0.0965717044906; WMRWME=42.489; WMEWMR=0.0235355033067; WMUWMR=4.155; WMRWMU=0.240673886883; ну и еще десяток подобных и вот такая конструкция if ( substr(C1,0,2)==substr(C2,0,2) ) { // аля WM=WM C=Math.round((eval(C1+C2)+0.0000001)*10000)/10000; в зависимости от того какие данные получат С1 и С2 (данные с формы страницы) в уравнение подставляется нужная переменная. Может быть не слишком оптимизированный, но вполне рабочий код. |
Цитата:
var currencies = { WMUWMZ: 7.478, WMZWMU: 0.133725595079, WMRWMZ: 31.139, WMZWMR: 0.0321140691737 }; if (substr(C1, 0, 2) == substr(C2, 0, 2) ) { // аля WM=WM C = Math.round((currencies[C1 + C2] + 0.0000001) * 10000) / 10000; } |
Часовой пояс GMT +3, время: 10:23. |