考虑以下例子:
if(this.plantService.plants[id])
{
if(this.plantService.plants[id].Name)
{
if(this.plantService.plants[id].Name[0])
return this.plantService.plants[id].Name[0].value;
else
return '';
}
else
return '';
}
return '';
我想知道是否有可能简化我在这里做的事情。
我的目标是测试对象链
this.plantService.plants[id].Name[0]
的有效性。然而,如果我只是测试
if(this.plantService.plants[id].Name[0]) {...}
,就会抛出异常。有什么建议吗? :)
&&
运算符,像这样:if(this.plantService.plants[id] && this.plantService.plants[id].Name && this.plantService.plants[id].Name[0]){return this.plantService.plants[id].Name[0].value} else {return ''}
- Kevin KloetTypeError
,因为你试图访问一个undefined
的属性。 - Madara's Ghost