Skip to content

Commit e1cdfd4

Browse files
committed
refactor: cache array
1 parent d966ab9 commit e1cdfd4

File tree

1 file changed

+6
-12
lines changed

1 file changed

+6
-12
lines changed

046-quiz app/script.js

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -51,19 +51,12 @@ const deselectAnswers = () => {
5151
};
5252

5353
// Refactor getSelected() for Efficiency
54-
const getSelected = () => {
55-
// let answer;
56-
// answerElements.forEach((answerElement) => {
57-
// if (answerElement.checked) answer = answerElement.id;
58-
// });
59-
// const answersArray = Array.from(answerElements);
54+
const getSelected = (answerArray) => {
6055
// const checkedAnswer = answersArray.find(
6156
// (answerElement) => answerElement.checked
6257
// );
6358
// return checkedAnswer ? checkedAnswer.id : undefined;
64-
const selected = Array.from(answerElements).find(
65-
(element) => element.checked
66-
);
59+
const selected = answerArray.find((element) => element.checked);
6760
return selected ? selected.value : undefined;
6861
};
6962

@@ -106,18 +99,19 @@ quizData = shuffle(quizData);
10699
loadQuiz();
107100

108101
submitButton.addEventListener("click", () => {
109-
const answer = getSelected();
102+
const answerArray = Array.from(answerElements);
103+
const answer = getSelected(answerArray);
110104
if (answer) {
111105
// Provide Immediate Feedback
112106
const correctAnswer = quizData[currentQuiz].correct;
113107
const isCorrect = answer === correctAnswer;
114108
if (isCorrect) score++;
115109
// const correctElement = document.getElementById(correctAnswer);
116110
// const answerElement = document.getElementById(answer);
117-
const correctElement = Array.from(answerElements).find(
111+
const correctElement = answerArray.find(
118112
(element) => element.value === correctAnswer
119113
);
120-
const answerElement = Array.from(answerElements).find(
114+
const answerElement = answerArray.find(
121115
(element) => element.value === answer
122116
);
123117

0 commit comments

Comments
 (0)