
Conner Wells
5,979 PointsWhy can't I name the first part of this for-in loop "key"?
This is the error I keep getting: ReferenceError: Strict mode forbids implicit creation of global property 'key'
var shanghai = {
population: 14.35e6,
longitude: '31.2000 N',
latitude: '121.5000 E',
country: 'CHN'
};
for (key in shanghai) {
console.log(key);
}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JavaScript Objects</title>
</head>
<body>
<script src="script.js"></script>
</body>
</html>
1 Answer

R S
2,252 PointsThe "key" variable was never declared. You need to declare it before you use it. Variable can be declared with const, let, or var
Jelena Feliciano
Full Stack JavaScript Techdegree Student 10,109 PointsJelena Feliciano
Full Stack JavaScript Techdegree Student 10,109 PointsThat was not given in this example on the video.
Example of a for-in loop: var person = { name : 'Sarah', country : 'US', age : 35, treehouseStudent : true, skills : ['JavaScript', 'HTML', 'CSS'] };
for (prop in person){ console.log(prop, ': ', person[prop]); }