オブジェクトに存在するかどうかにかかわらず、変数をパラメータに渡して関数をチェックしたいと思います。オブジェクトの既存のプロパティをチェックするために3つの方法を試みましたが、まだ出力はundefined
です。誰が私が間違っているか教えてくれますか?オブジェクトに関数のパラメータに記載されているプロパティがないかどうかをチェックする方法は?
var obj=[
{
"firstName": "James",
"lastName": "Bond"
}];
function propExists(prop)
{
//I tried #1
if(obj.hasOwnProperty(prop)===false)
{
return "Property doesn't exist";
}
//I tried #2
if(!(prop in obj))
{
return "Property doesn't exist";
}
//I tried #3
if("undefined" === typeof(obj[prop]))
{
return "Property doesn't exist";
}
}
console.log(propExists("Date of birth"));
の内側にそれが配列であるtrueまたはfalseにそれをテストする必要がいけないので、私は角括弧を削除することはできません。 –