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 trialIan Hock
7,604 PointsI was wondering why we create an empty variable called guess; ? I've erased it and the program still functions?!
Originally I thought guess; stored the value of whatever they enter in the prompt. But the way that block evaluates guess in the (while, do/while, ) loop structure it seems like it shouldn't need it.
3 Answers
Steven Parker
231,275 PointsAssigning a variable that has not been declared causes it to be created as a global. While this is perfectly legal in terms of the language itself, it is considered a "best practice" to define all variables before they are used. This can be helpful in determining the intended scope of the variable.
JavaScript also has a "strict" mode, and when it is used it makes it illegal to use a variable that has not been declared. So developing the habit of always declaring your variables will simplify development if you ever work in strict mode.
Ian Hock
7,604 Pointsthank you!
terminator genesys
1,134 Pointsyour program might work differently on larger projects as it declares a global variable and global variable may change if you use another variable with same name;