考慮這個例子:很好的方式,如果在JavaScript對象鏈是有效
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]) {...}
異常被拋出。
任何建議? :)
您可以使用'&&'op erator在你的如果是這樣的:'if(this.plantService.plants [id] && this.plantService.plants [id] .Name && this.plantService.plants [id] .Name [0]){return this.plantService。植物[id] .Name [0] .value} else {return''}' –
請向我們展示拋出的異常。你只是說有,但那是什麼? –
@SuperCoolHandsomeGelBoy這將是一個'TypeError',因爲您試圖訪問'undefined'上的屬性。 –