Posted By: kevin
Which is the right thing to do?
if (myObj['key'] == undefined)
if (myObj['key'] == null)
if ('key' in myObj)
And the inverse.
if (!('key' in myObj))
Be careful! The
in operator matches all object keys, including those in the object’s prototype chain.
myObj.hasOwnProperty('key') to check an object’s own keys and will only return
key is available on
Unless you have a specific reason to use the
in operator, using
myObj.hasOwnProperty('key') produces the result most code is looking for.