JavaScript JavaScript Loops, Arrays and Objects Tracking Data Using Objects Accessing All of the Properties in an Object

Henry Powell
Henry Powell
3,413 Points

Trouble with for in loop

Bummer: There was an error with your code: ReferenceError: Strict mode forbids implicit creation of global property 'prop'
script.js

var shanghai = { population: 14.35e6, longitude: '31.2000 N', latitude: '121.5000 E', country: 'CHN' }; for (prop in shanghai) { console.log(prop); }

script.js
var shanghai = {
  population: 14.35e6,
  longitude: '31.2000 N',
  latitude: '121.5000 E',
  country: 'CHN'
};
for (prop in shanghai) {
  console.log(prop);
}
index.html
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>JavaScript Objects</title>
</head>
<body>
<script src="script.js"></script>
</body>
</html>

2 Answers

Greg Heffley
Greg Heffley
6,371 Points

You need to assign prop as a variable.

for (const prop in shanghai) {
  console.log(prop);
}