"Как если бы это был код"
Есть массив history_date_db.
var history_date_db = []; history_date_db['988'] = 'Дата крещения Руси'; По ходу выполнения программы, в три переменные записываются значения. var lesson; //history var what; //date var request;//988 По нажатию на кнопку срабатывает функция, в которой идёт проверка:
if(history_date_db['988']) {
alert(history_date_db['988']);
}
Могу ли я переписать данную функцию иным способом:
if(lesson + '_' + what + '_db' + [request]) {
alert(lesson + '_' + what + '_db' + [request]);
}
И если можно, то почему у меня не пошло? |
Цитата:
var lessons = {
history: {
date: {
998: 'Дата крещения Руси',
2010: 'Ещё одна дата'
}
}
};
if (lessons[lesson] && lessons[lesson][what] && lessons[lesson][what][request]) {
alert(lessons[lesson][what][request]);
}
|
Спасибо
|
daMage, ваш вариант можно выполнить с помощью eval
if(eval(lesson + '_' + what + '_db[' + request + ']')) {
alert(eval(lesson + '_' + what + '_db[' + request + ']'));
}
|
Только не нужно.
|
| Часовой пояс GMT +3, время: 02:17. |