Basic JavaScript - Testing Objects for Properties

Okay so I think I have the correct answer but the it doesn’t let me continue because it says this :
checkObj({pet: "kitten", bed: "sleigh"}, "gift") should return the string Not Found .
But if I delete the gift element it says: checkObj({gift: "pony", pet: "kitten", bed: "sleigh"}, "gift") should return the string pony . So I’m basically in a loop. Can someone help please?

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

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

// 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/104.0.0.0 Safari/537.36

Challenge: Basic JavaScript - Testing Objects for Properties

Link to the challenge:

why do you think you need to create an object?
this is against making the function reusable

1 Like

Your function is being passed an obj already. So I am not sure why you are overwriting it here?

1 Like

Okay I get it now! :sweat_smile: I thought I had to create the object but it makes sense now ! Thanks!

1 Like