Hi guys, I have a issue with my javascript code. It’s an exercise from a book that I’m studying and I keep getting the error “Uncaught ReferenceError: costs is not defined” at the end of the code (I use the console.log on Chrome).
I copied the code from the book and it looks identical but for some reasons it still won’t work.
This is the code:
<script>
var scores = [60, 50, 60, 58, 54, 54, 58, 50, 52, 54, 48, 69, 34, 55, 51, 52, 44, 51, 69, 64, 66, 55, 52, 61, 46, 31, 57, 52, 44, 18,
41, 53, 55, 61, 51, 44];
function printAndGetHighScore(scores) {
var highScore = 0;
var output;
for (var i = 0; i < scores.length; i++) {
output = "Bubble solution #" + i + " score: " + scores[i];
console.log(output);
if (scores[i] > highScore) {
highScore = scores[i];
}
}
return highScore;
}
function getBestResults(scores, highScore) {
var bestSolutions = [];
for (var i = 0; i < scores.length; i++) {
if (scores[i] == highScore) {
bestSolutions.push(i);
}
}
return bestSolutions;
}
function getMostCostEffectiveSolution(scores, costs, highScore) {
var cost = 100;
var index;
for (var i = 0; i < scores.lenght; i++); {
if(score[i] == highScore) {
if(cost > costs[i]) {
index = i;
cost = costs[i];
}
}
}
return index;
}
var mostCostEffective = getMostCostEffectiveSolution(scores,costs,highScore);
console.log("Bubble Solution #" + mostCostEffective + " is the most cost effective");
var highScore = printAndGetHighScore(scores);
console.log("Bubbles tests: " + scores.length);
console.log("Highest bubble score: " + highScore);
var bestSolutions = getBestResults(scores,highScore);
console.log("Solutions with the highest score: " + bestSolutions);
</script>