по-моему,лучше (красивее будет код и его доработка в дальшейшем) это сделать не через массивы,а через хеши ( ассоциативные массивы,короче
) )
a = {
'вопрос 1' : {
'вопроc' : ' Что такое JS ? ',
'ответы' : [ 'JavaScript', 'JopaScript', 'JavaSuck', ' не знаю ' ],
'ответ' : 'Javascript'
},
'вопрос 2' : {
'вопроc' : 'Что вернет Number.MIN_VALUE > 0 ',
'ответы' : [ 'true', 'false', 'Error', ' не знаю ' ],
'ответ' : 'true'
}
}
1.подскажите пожалуйста функцию чтобы изменить значение массива на 5 вперед
????????????
в будущее чтоли??
2.также интересует функция, с помощью которой сравнивать выбранный ответ с правельным и оповестить нас в алерте
всем заранее спасибо!!!
в случае с моим (хеш) , это :
var vopros = '2', // номер вопроса ( индекс)
otvet = 4 // ответ - индекс из массива ответов. лучше, если это циферка
var hash = a['вопрос '+vopros]; // копия хеша (массива) второго вопроса
var answer = hash['ответы']; // копия хеша ответов для второго вопроса
var answered = answer[otvet] // т.к. otvet = 4, то в answered будет храниться строка 'не знаю'
var right = hash['ответ']; // это строка ответа для вопроса
alert ( right == answered ) ; // для нас false
а теперь можно и сделать функцию
// имя функции camelStyle :)
checkAnswer = function(vopros,otvet){
var hash = a['вопрос '+vopros],
answered = hash['ответы'][otvet], // короткая запись,без создания answer
right = hash['ответ'];
return right == answered ; //возвращаем bool
}
//попробуем ответить на первый вопрос первым вариантом ответа
alert ( checkAnswer(1,1 ) ? "Правильно":"Неверно" );
я изложил примерную логику, с примерами
за работоспособность пока не отвечаю ( не научился пока писать сообщения так,чтобы можно было запустить скрипт и протестировать прямо тут )