Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.11.2012, 12:01
Новичок на форуме
Отправить личное сообщение для Kamilius Посмотреть профиль Найти все сообщения от Kamilius
 
Регистрация: 11.11.2012
Сообщений: 2

Массив обьектов
Всем доброго времени суток. Облазил англо\русско язычный интернет в поисках нормального, доходчивого объяснения тому, как правильно создавать объект в массиве, но, к сожалению, ничего толкового - не нашел Далее покажу свои попытки выполнить задание по написанию теста в javascript, точнее ту его часть, где нужно создать массив объектов, а именно массив с вопросами\ответами.

Попытка первая:
var quiz = {
    question:"",
    answer:""
}
var questionList = [];

questionList[0] = new quiz();
questionList[0].question = "Чи є щось спільне між JavaScript і Java, окрім назви?";
questionList[0].answer = "ні";

questionList[1] = new quiz();
questionList[1].question = "Чи має значення реєстр літер при написанні назв змінних у JavaScript?";
questionList[1].answer = "так";

Результат - код не исполняется, + devtool в Chrome выдает: "Uncaught TypeError: object it not a function" на "questionList[0] = new quiz();".

Попытка вторая:
var quiz = {
    question:"",
    answer:""
}
var questionList = [];

quiz.question="Чи є щось спільне між JavaScript і Java, окрім назви?";
quiz.answer = "ні";
questionList.push(quiz);

quiz.question="Чи має значення реєстр літер при написанні назв змінних у JavaScript?";
quiz.answer = "так";
questionList.push(quiz);

Результат - код исполняется, НО все элементы массива в конце имеют значение последнего добавленного объекта. Как я понял, в массив передается не объект, а ссылка на него.

Был бы очень признателен за розяснение о том, как же правильно создавать объекты в массиве.

Последний раз редактировалось Kamilius, 11.11.2012 в 12:03.
Ответить с цитированием
  #2 (permalink)  
Старый 11.11.2012, 12:44
Аватар для nerv_
junior
Отправить личное сообщение для nerv_ Посмотреть профиль Найти все сообщения от nerv_
 
Регистрация: 29.11.2011
Сообщений: 3,924

var arr = [{
    prop: 'value'
}];

var arr = [];

arr.push({
    prop: 'value'
});

Сообщение от Kamilius
Облазил англо\русско язычный интернет в поисках нормального, доходчивого объяснения тому, как правильно создавать объект в массиве, но, к сожалению, ничего толкового - не нашел
только в это я все равно не верю
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
Ответить с цитированием
  #3 (permalink)  
Старый 11.11.2012, 12:46
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

var questionList = new Array();

//Вопрос 1
questionList[0][0] = 'Чи є щось спільне між JavaScript і Java, окрім назви?';
questionList[0][1] = 'hi';

//Вопрос 2
questionList[1][0] = 'Чи має значення реєстр літер при написанні назв змінних у JavaScript?';
questionList[1][1] = 'так';

function question(a){
alert('Вопрос: '+questionList[a][0]);
alert('Ответ: '+questionList[a][1]);
}


<input type="button" value="Вопрос 1" onclick="question(0)">
<input type="button" value="Вопрос 2" onclick="question(1)">
Ответить с цитированием
  #4 (permalink)  
Старый 11.11.2012, 12:58
Новичок на форуме
Отправить личное сообщение для Kamilius Посмотреть профиль Найти все сообщения от Kamilius
 
Регистрация: 11.11.2012
Сообщений: 2

Сообщение от nerv_ Посмотреть сообщение
var arr = [{
    prop: 'value'
}];

var arr = [];

arr.push({
    prop: 'value'
});


только в это я все равно не верю
Это правда, просто я не так давно знаком с программированием, и вполне возможно, что не совсем правильно формировал "запрос"
Спасибо за помощь, к стати
Ответить с цитированием
  #5 (permalink)  
Старый 12.11.2012, 09:50
Любитель
Отправить личное сообщение для JsLoveR Посмотреть профиль Найти все сообщения от JsLoveR
 
Регистрация: 16.12.2009
Сообщений: 422

Нормально, по - человечески :
var massQuestions=[
	{
    	question : "Чи є щось спільне між JavaScript і Java, окрім назви?",
    	rightAnswer : "ні"
	},
	
	{
   		question : "Чи має значення реєстр літер при написанні назв змінних у JavaScript?",
    	rightAnswer : "так"
	}
];
for(var i in massQuestions ) alert("Запитання: "+massQuestions[i].question+"\nВідповідь: "+ massQuestions[i].rightAnswer);

Последний раз редактировалось JsLoveR, 12.11.2012 в 09:54.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Возможно ли как-то структурировать массив match? dump Общие вопросы Javascript 1 29.07.2012 12:19
преобразовать php массив в массив js zebulun Общие вопросы Javascript 12 02.09.2011 00:49
как запихнуть в массив оператор ? mitiya Общие вопросы Javascript 2 09.02.2011 18:57
Как создать многомерный массив FRIE Общие вопросы Javascript 29 02.06.2010 19:14
Подскажите, как вернуть js-скрипт массив Polkan AJAX и COMET 18 30.04.2010 23:30