Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialVineel Aakash Koppolu
1,898 PointsCan`t I use toLowercase() to variable?
When I use toLowercase() below(variables) code I`m unable to get the result..!
var quiz= [
['Your name?','Neil'],
['neil`s age',24],
['Aim of neil is film maker',true]
];
var answer;
var question;
var response;
var correctanswers = 0;
var html;
function print(message) {
document.write(message);
}
for(var i=0;i < quiz.length; i+=1){
question=quiz[i][0];
answer=quiz[i][1];
response = parseInt(prompt(question));
if(response.toLowerCase()=== answer.toLowerCase()){
correctanswers+=1;
}
}
html = "you got "+ correctanswers+" question(s) right?";
print(html);
1 Answer
Steven Parker
231,269 PointsEdwin's right .. you can't toLowerCase() a numeric value, which is what you are putting into response. But you need to rethink that anyway, since your answers are a mix of strings and numbers.
The best way to get the program working would probably be to store all your answers as strings, even if the answer looks like a number. For logic answers, maybe use 'yes' and 'no' instead of 'true' and 'false'. Just structure the question to ask for that kind of response. Then eliminate the parseInt completely.
Edwin Castillo
Courses Plus Student 3,350 PointsEdwin Castillo
Courses Plus Student 3,350 PointsYes you can use lowerCase() in a variable if its value is a string, I see in your code that you're parsing response into an integer before the if statement, so maybe that's your mistake? try to console.log(typeof response) and see what you get.