JSFiddle - React, Tailwind, and code Playground
HTML
<div id="output">
</div>
JavaScript
//establishing variables
var students = [
{
name: 'Aaron',
track: 'JavaScript',
points: 500,
achievements: []
}, {
name: 'Tom',
track: 'PHP',
points: 1500,
achievements: [1,2,3]
}, {
name: 'Stewie',
track: 'Ruby',
points: 50,
achievements: []
}
];
var foundStudents = [];
// Functions declaration
function print(message) {
var outputDiv = document.getElementById('output');
outputDiv.innerHTML = message;
}
function getStudentReport(students) {
return students.reduce(function(sum, current) {
return sum
+ '<h2>Student: ' + current.name + '</h2>'
+ '<p>Track: ' + current.track + '</p>'
+ '<p>Points: ' + current.points + '</p>'
+ '<p>Achievements: ' + current.achievements + '</p>';
}, '');
}
// Searching for students
while (true) {
var search = prompt("Type a student's name to access their records or type 'quit' to quit this search.");
if (search === null || search === 'quit') {
break;
}
students.forEach(function(item, index) {
if (search.toLowerCase() === item.name.toLowerCase()) {
foundStudents.push(item);
}
});
if (foundStudents.length) {
var message = getStudentReport(foundStudents);
print(message);
} else {
alert(search.name + "is not on our records.");
}
}