Why wont this work? I'm very confused and open to any solutions

Tell us what’s happening:
Describe your issue in detail here.

  **Your code so far**

function checkObj(obj, checkProp) {
// Only change code below this line
var myObj = {
  "pet": "kitten", 
  "bed": "sleigh",
  "city": "Seattle",
  "gift": "pony"
}; 

if (myObj.hasOwnProperty(checkProp)){
  return myObj[checkProp];
} else return "Not Found"

return result;

checkObj ("gift");
// Only change code above this line
}
  **Your browser information:**

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.55 Safari/537.36 Edg/96.0.1054.34

Challenge: Testing Objects for Properties

Link to the challenge:

In your function, you are using the hard coded _ myObj_. But the function is having an object passed into it, obj. That is what you should be using, not your hard coded value. If you want to use that for testing, move it out of the function and pass it in. The tests are (I assume) passing in different objects with different values and it can’t understand why your function doesn’t seem to be using the values it is passing in.

When I fix that, your code passes for me.

1 Like