检查变量是否未定义
Cheking if variable is undefined
所以我想检查 node.js 中是否有未定义的变量。到目前为止,我是这样工作的:
if(typeof object.data.items[1] === 'undefined')
{
break;
}
else
{
console.log("Defined");
}
但是它给我这个错误:
"TypeError: Cannot read property 'data' of undefined".
关于如何在检查它是否未定义的同时绕过此错误的任何想法?
检查两个对象,object.data 首先定义。
if(object && object.data && typeof object.data.items[1] === 'undefined')
{
break;
}
else
{
console.log("Defined");
}
或
if(!object || !object.data || typeof object.data.items[1] === 'undefined')
{
break;
}
else
{
console.log("Defined");
}
似乎 object
变量也未定义。试试下面的代码:
if(
typeof object === 'undefined' ||
typeof object.data === 'undefined' ||
typeof object.data.items[1] === 'undefined')
{
break;
}
else
{
console.log("Defined");
}
if(!_.get(object,['data','items',1]))
{
break;
}
当您尝试访问 属性 of JSON 对象时,您必须确保点运算符的左侧必须有一些值,但不能是 undefined 或 null。 IE。
如果你想访问 a.b.c.d
那么你必须确保每个左侧 属性 都有一些值。您可以使用@rijin 的回答。
所以我想检查 node.js 中是否有未定义的变量。到目前为止,我是这样工作的:
if(typeof object.data.items[1] === 'undefined')
{
break;
}
else
{
console.log("Defined");
}
但是它给我这个错误:
"TypeError: Cannot read property 'data' of undefined".
关于如何在检查它是否未定义的同时绕过此错误的任何想法?
检查两个对象,object.data 首先定义。
if(object && object.data && typeof object.data.items[1] === 'undefined')
{
break;
}
else
{
console.log("Defined");
}
或
if(!object || !object.data || typeof object.data.items[1] === 'undefined')
{
break;
}
else
{
console.log("Defined");
}
似乎 object
变量也未定义。试试下面的代码:
if(
typeof object === 'undefined' ||
typeof object.data === 'undefined' ||
typeof object.data.items[1] === 'undefined')
{
break;
}
else
{
console.log("Defined");
}
if(!_.get(object,['data','items',1]))
{
break;
}
当您尝试访问 属性 of JSON 对象时,您必须确保点运算符的左侧必须有一些值,但不能是 undefined 或 null。 IE。
如果你想访问 a.b.c.d
那么你必须确保每个左侧 属性 都有一些值。您可以使用@rijin 的回答。