鍍金池/ 問(wèn)答/HTML/ obj.list && obj.list.length 為什么不

obj.list && obj.list.length 為什么不先判斷obj.list是否有值,就會(huì)報(bào)length沒(méi)有定義?

RT:obj.list && obj.list.length 為什么不先判斷obj.list是否有值,就會(huì)報(bào)length沒(méi)有定義?
因此我都會(huì)這樣處理一下(我大概能理解為什么要這樣處理,但不知道專業(yè)的解釋)

{
    orderMsgJson0.list && orderMsgJson0.list.length ? [
        orderMsgJson0.list.map(item => (
            <p dangerouslySetInnerHTML={{ __html: formatNullStr(this.strReplace(item.senderMsg, `scm.html?tab=saleOrderDetail&orderId=${item.orderId}`)) }}></p>
        )),
        <p className="person-more"><a href="#">查看更多>></a></p>
    ] : <p>暫無(wú)數(shù)據(jù)</p>
}
回答
編輯回答
負(fù)我心

1.不判斷l(xiāng)ist是否存在就取list的話,如果list不存在,就會(huì)報(bào)異常,導(dǎo)致后面的代碼無(wú)法執(zhí)行
2.map一樣

2018年1月23日 12:29